
【Node.js】ExpressでMongoDBのデータを削除する
前回は、MongoDB のデータを使って、一覧画面から詳細画面に遷移しました。

【Node.js】MongoDBのデータを使って、一覧画面から詳細画面に遷移する
今回は、Express で MongoDB のデータを削除します。
コードは、前回のコードを使用します。
views/index.ejs
views/menu.ejs
views/menu-detail.ejs
views/menu-edit.ejs
index.js
models/menu.js
controllers/menus.js
routes/index.js
routes/menu.js
utils/database.js
モデルを修正する
まずは、削除モデルを修正します。
moodels フォルファの menu.js を開きます。
deleteMenuの中身を削除します。
fetchMenuの中身をコピーし、deleteMenuの中に貼り付けます。
MongoDB のデータを一つ削除するときは、deleteOneを使います。
findの代わりにdeleteOneにしましょう。
また、nextも必要ありません。
thenのreturnも必要ないので、console.logで削除内容を表示させます。
削除モデルが完成しました。
コントローラーを修正する
次は、削除のコントローラーを修正します。
getMenuのように、postDeleteMenuをthen、catchにします。
res.redirect("/")をthenの中に入れます。
これで削除コントローラーが完成したので、動作確認してみます。
メニューを追加しました。
次は、『半チャンラーメン定食』を削除してみます。
無事、削除できました。
MongoDB にもデータが残っておりません。
お知らせ

私事ですが、Udemyで初心者を対象にしたReactの動画コースを作成しました。
Reactについて興味がありましたら、ぜひ下のリンクからアクセスしてください。
詳しくはこちら(Udemyの外部サイトへ遷移します)