2017-02-13 3 views
0

私が作業しているAPIプロジェクトで作成したmongoデータベースからフィールドを削除しようとしてエラーが発生しました。私はまだRESTfulなAPIだけでなく、MongoDBとExpressにも非常に新しいです。このようなAPIを作るための手順を説明したYoutubeのチュートリアルに続き、私はやっていて、すべてが完璧に機能しました。今私は自分のカスタムフィールドを使用してこのAPIを再現しようとしています。エラーCRUD API(NodeJS、MongoDB、Express)を削除できません

基本的に私のデータベースには現在2つの要素が設定されています。私はすでに正しく動作するget、add、updateメソッドを作成しました。

[{"_id":"58a112564cb325769b9d90de","name":"John Doe","caption":"I like pizza","friends":["id1","id2","id3"],"schedule":[[13,14],[14,15.5]]},{"_id":"58a1178da52bfc07fd25ce3f","name":"Carla Doe","caption":"I hate pizza","__v":0,"friends":null,"schedule":null}] 

ここで問題となる機能は、削除機能です。私はそれが間違っているかもしれないと思うようではありません。これは、前述のYoutubeチュートリアルとまったく同じ機能です。私は何百回もチェックしたことがあります。文字の間違いや欠落はありません。ここで

は、私は郵便配達で取得エラーです:ここでは

Cannot DELETE /api/clients/58a1178da52bfc07fd25ce3f 

はserver.jsの一部である:ここで

// Delete client 
app.delete('api/clients/:_id', function(req, res){ 
    var id = req.params._id; 
    Client.deleteClient(id, function(err, client){ 
     if(err){ 
      throw err; 
     } 
     else { 
      res.json(client); 
     } 
    }); 
}); 

はclients.jsの一部です:

// Delete Clients 
module.exports.deleteClient = function (id, client, callback) { 
    var query = {_id: id}; 
    Client.remove(query, client, callback); 
}; 

問題を解決するために必要なすべての情報を提供しているかどうかはわかりません。私は私の愛のためにそれがどこから来ているかを見つけることができません。

あなたの回答をお待ちしています。それがあるべき

+0

'deleteClient'は3つのparamsを取る - あなただけそれを2 – tymeJV

+0

を渡してください。使用しているMongoDBライブラリに関する情報を追加してください。また、前述のように、 'deleteClient'はあなたが渡しているところで3つのパラメータを必要とします。 – necromos

+0

私はmongooseを使用しています。 3つのパラメータについては、これは問題かもしれませんが、私は前のAPIで2つしか渡していませんでした。 – YT98

答えて

1

は私が '/' '_ ID// API /顧客:前に欠けていると思う

app.delete('/api/clients/:_id', function(req, res) 
+0

それはそれだった...私は自分自身でこれを見ていないと信じることができない非常にtazeeしていただきありがとうございます。 – YT98

関連する問題