правильный способ определить ассоциацию, чтобы я мог изменить данные через ассоциацию - PullRequest
1 голос
/ 27 марта 2012

Я делаю что-то не так, или это либо метод, которым я пытаюсь изменить данные, либо способ определения ассоциации.

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

Что я делаю не так?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 27 марта 2012

Попробуйте вызвать save () внутри вашего блока, чтобы сохранить изменения.

2 голосов
/ 27 марта 2012

Это должно сработать ...

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

Если нет подтверждения для

validates_uniqueness_of :name
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...