У меня есть User
с несколькими Posts
class User
has_many :posts
accepts_nested_attributes_for :posts, allow_destroy: true
end
class Post
belongs_to :user
end
В контроллере я буду обновлять через
@user.update({ posts_attributes: [{uuid:'blah1'},{uuid:'blah2'}] })
Я надеюсь, что он может автоматически уничтожать несуществующие posts
в каждом обновлении.
@user.update({ posts_attributes: [{uuid:'blah1'},{uuid:'blah2'}] }) # create blah1, create blah2
@user.update({ posts_attributes: [{uuid:'blah2'},{uuid:'blah3'}] }) # delete blah1, create blah3
Как мне этого добиться?
Обновление:
Я знаю, что это можно сделать через
@user.update({ posts_attributes: [{uuid:'blah1',:_destroy:true},{uuid:'blah2'},{uuid:'blah3'}] })
Но это не прилично с моей точки зрения.Может ли это быть внутри модели вместо внешней модели?
Обновление:
Я нашел эту ссылку , но она выглядит намного сложнее.