定义关联的正确方式,这样我就可以通过关联更改数据



我做错了什么,要么是在我试图更改数据的方法中,要么是我定义关联的方式中。

class Hive
  has_many :bees, :dependent => :destroy
end
class Bee
  belongs_to :hive
  attr_accessor :alive, :name
end
>h = Hive.create()
>h.bees.where(:alive => false).count = 100 #created from after_initialize
>h.bees.where(:alive => false).each {|b|b.name="Walter"} 
>h.bees.where(:name => "Walter").count = 0

我做错了什么?

谢谢!

这应该能奏效。。。

h.bees.each do |bee|
  bee.name = "Walter"
  bee.save!
end

如果没有验证

validates_uniqueness_of :name

尝试在块内调用save()以持久化更改。

相关内容

最新更新