Rails: дочерняя запись не отслеживает изменения в родительском - PullRequest
0 голосов
/ 16 декабря 2010

Я уверен, что это обычное поведение Rails, и мне не хватает чего-то фундаментального, но что это?

Дочерний элемент принадлежит родителю, у родителя много членов.*

Хотя атрибут name parent был изменен, и хотя child продолжает ссылаться на того же родителя, он не отражает обновленный атрибут родителя.Это также не проблема провала update_attributes.Если запись Салли (child) снова извлекается из базы данных, атрибут name отражает новое значение parent.

Что здесь происходит?

Спасибо за вашепонимание!

1 Ответ

1 голос
/ 16 декабря 2010

Это связано с отсутствием карты объектов в ActiveRecord. Сохранение дочернего объекта без изменения родительского объекта не обновит родительский объект.

Чтобы обновить ассоциацию, сделайте что-то вроде child.parent(true).name.

...