VAR bodyParserは=(必要' bodyParser ' ) VARマングース=必要(' マングース' ;) // *********************************************************のMongoDBデータベース********* ********** // データベースへの接続 mongoose.Promise = グローバル.Promise; mongoose.connect(' のMongoDB:// localhostの/ TODO '、{useMongoClient:真へ}) .then(関数(){コンソールファイル(.log ' のMongoDBデータベース接続の成功' )}) 。キャッチ(関数(ERR){にconsole.log(ERR)}) // データベース構造を作成し、テーブル名がtodolistsある VAR= Mongoose.model todolistの(' todolistの' 、{ ID:ナンバー、 DONE:ブール、 タイトル:文字列 }) // テストコード:データベースのデータに格納されているtodolistsテーブル // todolistの({ID:100、DONE:falseに、タイトル。:})を保存(機能(ERR、データ){ "食べる" // IF(ERR)スローERRを; // はconsole.log( '正常に保存され') // }) // ******** ********のMongoDBデータベースは******************* // オブジェクトアプリ受け、外方機能を露出 module.exportsは= 関数(APP){ アプリ。使用(bodyParser.urlencoded({拡張:falseに})) // 1.リクエスト(GET)データを取得する 。アプリをGET(" / " 、機能(REQ、RES){ // データベース内のすべてのデータに対するクエリ TodoList.find({}、関数(ERR、データ){ // フロントエンドに返されるすべてのデータは、ホームレンダリングさ res.renderを(" インデックス "{ " トドス」:データ}); }) }) // **********各種フロントエンドによって開始される開始遮断要請以下*********** // データを送信する2. POSTリクエスト傍受遠位 app.post(" /追加" 、関数(REQ、RES){ VAR OBJ = {ID:Date.now()、DONE:falseに、タイトル:req.body.title} / / データベースにデータを挿入し、重複しない主キーIDを生成 todolistの(OBJ).SAVE(関数(ERR、データ){ IF(ERR)スローERR; res.send(' OK ' ) }) }) // 3ノックダウン遠位POSTデータ送信要求 app.deleteを(" /デル/:ID " 関数(REQ、RES){ VARの ID =ナンバー(REQ。のparamsは.ID); // クエリデータベースは、IDに応じて削除データ TodoList.find({ " ID 」:ID})を削除(機能。 (ERR、データ){ IF(ERR)スローERR; res.send(' OK ')//が遠位に応答結果を返す }) }) // 、フロントエンド4インターセプトを変更するPUT要求状態機関が重要な変更 (app.put 「/更新/:ID 」、関数(REQ、RES){ VARの ID =ナンバー(REQ。のparamsは.ID); // 変更DOS状態(はい/いいえ) TodoList.findOne({ " ID " :ID}、関数(ERR、データ){ data.done!= data.done; // 割り当て変性 data.save(); // 保存 res.send(' OK '); // 遠位への応答結果を返します }) }) // 傍受パッチ変更要求、コンテンツ変更DOSの前端 app.patch(" :ID /更新/ " 、関数(REQ、RES){ VAR =ナンバーID(REQ のparamsは、.ID) // レビュータイトルコンテンツ行う、方法1。 // TodoList.findOne({ "ID":ID}、関数(ERR、データ){ // data.title = req.body.title; // 割り当て変更 // data.save (); // 保存 // res.send( 'OK'); //は、遠位に応答結果を返す @ }) TodoList.update({ " ID ":ID}、{$ SET:{" タイトル" :req.body.title}}、関数(ERR、データ){ res.send(' OK '); // 遠位への応答結果を返します }) }) }