【发布时间】:2013-06-09 15:50:35
【问题描述】:
我正在将应用程序从 rails3.2.13 迁移到 rails4.0.0-rc1。我有以下代码:
class Foo < ActiveRecord::Base
has_many :bars
before_create :build_bars
private
def build_bars
self.bars.build({name: 'Bar 1'})
self.bars.build({name: 'Bar 2'})
end
end
上面的代码在 rails3 中工作,但在 rails4 中创建了空记录。控制台中的一些尝试和错误表明,确实没有分配属性。
f = Foo.new
f.bars.build({name: 'Bar'})
=> #<Bar id: nil, name: nil>
建立关联并将它们与其父记录一起保存的正确方法是什么?
【问题讨论】:
-
这可能与
attr_accessible被强参数替换有关。
标签: ruby-on-rails ruby-on-rails-4