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 –
Thanks Tedをご覧ください。あなたは正しいパラノイアがモデルにあり、私は "u.delete!"を使用する必要があります。本当にオブジェクトを削除する。 – Scott