正在删除 Rails 中的关联记录

Deleting association record in Rails

我有两个模型。

class User<<ActiveRecord::Base
has_many :projects
end

class Project<<ActiveRecord::Base
belongs_to :user
end

然后在控制台中,我在变量 'p' 中加载了一个项目,在变量 'u' 中加载了一个用户。 考虑以下命令

u = User.first
p = Project.first
u.projects<<p

现在,

u.projects 和 p.user,两者都显示正确的 amd 预期输出。

我的问题是如何从用户 'u' 的项目中删除项目 'p',以便结果反映在两个模型中。

我试过

u.projects.delete(p)

这只会从 'u'

的项目中删除 'p'

但 p.user 仍然显示 'u',这是我不想要的。 那么,我该如何管理呢?

使用 u.reload 进行重新加载操作解决了我的问题。 感谢 mr_sudaca 的建议。重新加载操作从数据库中获取记录的最新状态并刷新存储在内存中的对象以反映对象的最新状态。