У меня есть модель Foo
, которая :has_many bars
, изначально создаю и сохраняю Foo
экземпляр foo
. Глядя на foo.bars
, он пуст, как ожидалось. Но после того, как я создаю экземпляр bar
, который belongs
соответствует экземпляру foo
. foo.bars
больше не должно быть пустым, но оно все равно. Если я делаю Foo.find(foo.id).bars
, он возвращает непустой результат, как ожидалось. Есть ли способ до update
foo
, так что мне не нужно это делать. Благодаря!обновление ассоциации модели при добавлении/удалении ассоциации
0
A
ответ
0
Проблема в том, что foo.bars был бы кэширован первым вызовом. Вы можете заставить его обновиться с помощью foo.bars(true)
2
Это, вероятно, происходит из-за кеширования.
foo = Foo.create! #=> executes sql, and caches the result
foo #=> retrieved from cache
foo.bars << Bar.create #=> creates the bar, and associates it with the foo instance
foo.bars #=> retrieves the bars from cache, so it's []
Foo.find(foo.id).bars #=> executes sql, and returns [<bar# id: 1>]
Чтобы обойти это, вы просто создать новый экземпляр Foo, или просто перезагрузить его:
foo.reload
Или foo.bars(true)
.
Смежные вопросы
- 1. рельсы модели ассоциации сценариев
- 2. Получить ассоциации модели
- 3. Вопрос ассоциации модели CakePHP
- 4. JPA Обновление двунаправленного ассоциации
- 5. Как запросить ассоциации ассоциации
- 6. Rails Ассоциации: Односторонние ассоциации
- 7. Эффективный подсчет ассоциации ассоциации
- 8. CakePHP 3-уровневые модели ассоциации
- 9. Использование CGridView для ассоциации модели
- 10. Атрибут refactor для ассоциации модели
- 11. rails3 создание модели ассоциации has_one
- 12. Форма модели ассоциации Rails Вопрос
- 13. Сохранение модели с hasOne ассоциации
- 14. правой ассоциации между три модели
- 15. Получить несохраненные ассоциации внутри модели
- 16. Создание form_for для модели ассоциации
- 17. Ассоциации и отношения модели Rails
- 18. Обновление полиморфной ассоциации в рельсах
- 19. Обновление ассоциации с объектом JSON
- 20. Обновление ассоциации без сохранения его
- 21. Обновление дочерней ассоциации в ActiveModel
- 22. рельсы 3 модели ассоциации модели с rails_admin
- 23. Счетчик кэша для ассоциации ассоциации
- 24. Обновление ассоциации по идентификатору, кроме первичного ключа
- 25. Рельсы has_many ассоциации через belongs_to полиморфной ассоциации
- 26. RSpec завод девушка пропуск ассоциации к ассоциации
- 27. Проверка ассоциации HABTM при удалении:
- 28. Sequelize ассоциации
- 29. Обновление структуры базы данных при изменении ассоциации Rails
- 30. Создание или обновление ассоциации с has_many: через