我有两个模特。
class User<<ActiveRecord::Base
has_many :projects
end
class Project<<ActiveRecord::Base
belongs_to :user
end
然后在控制台中,我在变量&#39; p&#39;中加载一个项目。以及变量&#39; u&#39;中的用户。 请考虑以下命令
u = User.first
p = Project.first
u.projects<<p
现在,
u.projects和p.user,两者都显示正确的amd预期输出。
我的问题是如何删除项目&#39; p&#39;来自用户的项目&#39; u&#39;结果反映在两个模型中。
我尝试过做
u.projects.delete(p)
这只会删除&#39;来自&#39; u&#39;
的项目但p.user仍然显示“你好”。这是我不想要的。 那么,我该如何管理呢?
答案 0 :(得分:1)
使用u.reload
进行重新加载操作解决了我的问题。
感谢mr_sudaca
的建议。重新加载操作从db获取记录的最新状态,并刷新存储在内存中的对象以反映对象的最新状态。