我使用Sinatra和Mongoid来访问MongoDB。除了当我尝试删除一个对象时,它的大部分工作都很好,对象被删除但似乎保留在数据库中。Mongoid不删除Mongo对象
u = User.find(user_id)
u.delete
这似乎是工作,不会产生一个错误,但是当我使用蒙戈控制台以确认此检查数据库,对象仍然存在。用户对象不在加盖集合中。
u = User.find(user_id)
u.delete
u = User.find(user_id)
此更改确实会生成错误,表示该对象已成功删除。尽管如此,在Mongo控制台中,对用户集合的find()调用仍然显示该对象。
你在你的模型中包含“包含Mongoid:Paranoia”吗?默认行为不应该使用deleted_at。见http://mongoid.org/docs/extras.html –
谢谢特德。你是正确的偏执狂是在模型中,我需要使用“u.delete!”真正地清除对象。 – Scott