破棄しようとしているバックボーン モデルがありますが、リクエストと共にパラメーターが送信されていないため、サーバーは「Delete 404 not found」エラーを返しています。
アイテムが既にリストにあるかどうかに基づいてアイテムを作成/破棄しているため、私の構造が少し奇妙であることは認めます。
var list_item = new MyApp.Models.ListItem({item_id: this.model.id, group_id: this.model.group_id}); if($(e.currentTarget).hasClass('add')){ list_item.save(list_item, { 成功: 関数 (応答) { this.model.attributes.addedtolist_id = response.id console.log(this.model); }、 エラー: 関数(){ alert('アイテムを保存できませんでした'); } }); } else if($(e.currentTarget).hasClass('remove')) { list_item.id=this.model.addedtolist_id; list_item.attributes.id = this.model.addedtolist_id; console.log(list_item); list_item.destroy({ 成功: 関数(){ アラート ('削除'); }、 エラー: 関数(){ alert('チェックを外すことができませんでした'); } }); }
list_item
破棄前のコンソール出力は
_escapedAttributes: オブジェクト _previousAttributes: オブジェクト _setting: false アトリビュート:オブジェクト ID: 2 item_id: 66 グループ ID: 64 __proto__: オブジェクト cid: "c23" ID: 2 __プロト__: q
しかし、削除リクエストで送信されたヘッダーを見ると、パラメーターが送信されていません。
-----------------------更新パラメーターが送信され、404 が返されます --------------
Yaroslav の推奨に従って、destroy メソッドに「ヘッダー」を追加しましたが、Rails コントローラーはまだDELETE 404 not found
エラーを返しています。リスト項目を返して、破棄する前に正しいものを取得しようとしています。
私のコントローラーは
絶対に破壊する listitem = Listitem.find(params[:id]) return render :json => listitem 終わり