破棄しようとしているバックボーン モデルがありますが、リクエストと共にパラメーターが送信されていないため、サーバーは「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 終わり