ruby-on-rails - Rails - 在 before_save 回调中保存另一个模型的对象

标签 ruby-on-rails callback

我可以在另一个模型 B 的“before_save”回调中对模型 A 的对象调用“保存”吗?

案例:我有一个包含艺术家的事件模型。当我保存事件时,我需要将它与那些艺术家相关联,如果艺术家仍然不存在,我需要创建它并保存它。 (只是传递了一个字符串,不是Object,所以他不能在Event-creation时存在)

所以,问题是:我可以在 Event 的 before_save 上调用 artist.save 吗?

此处发布了一条有争议的评论:http://apidock.com/rails/ActiveRecord/Callbacks/before_save但是“有时观察到”真的很吓人。

最佳答案

很难证明是否定的,但可以快速浏览 Lighthouse 中的公开票证没有显示与您找到的评论相关的任何内容。

但一般来说,您可能希望将艺术家分配/保存链向上推到 before_validation 回调。这样,您就可以在事件模型中要求艺术家,并在事件验证中捕获艺术家创建的任何问题。

关于ruby-on-rails - Rails - 在 before_save 回调中保存另一个模型的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5419596/

相关文章:

javascript - 回调有什么意义

node.js - NodeJS MongoDB 回调 hell

javascript - Jasmine spy 功能在回调中不起作用

ruby-on-rails - 如何在 Rails 控制台中查看 MySQL 查询

ruby-on-rails - 如何使用 Koala gem 获取 Facebook 用户的电子邮件

mysql - rake 中止!未初始化的常量 Mysql2

ruby-on-rails - 如何使用 Rails 3 获取请求的目标 Controller 和操作?

ruby-on-rails - rails 中的动态路线

java - Retrofit 1.9 回调错误

function - Matlab计时器未定义函数或变量