我使用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