お気に入り機能を実装しようと思っています。
jqueryでコントローラー側にデータを渡して処理をしようと思っています。
コントローラー側で削除処理できません。
Javascript
1//登録削除ボタンを押した時の処理 2$('.deletefavorite').click(function(e){ 3 e.preventDefault(); 4 var post_id = $(this).attr('data-post-id'); 5 var user_id = $(this).attr('data-user-id'); 6 var $user = JSON.parse('<?php echo json_encode($userdata['id']);?>');//ユーザid 7 var data = {postId:post_id,userId:user_id}; 8 $.ajax({ 9 url:'/cakephp/posts/deletefavoajax', 10 type:'POST', 11 data:data 12 }).done(function(){ 13 //削除の成功処理 14 alert('削除成功'); 15 $('.deletefavobtn').hide(); 16 $('.addfavobtn').show(); 17 console.log(data); 18 }).fail(function(){ 19 //削除処理失敗の場合 20 alert('再度実行してください。'); 21 }); 22});
{postId: "1", userId: "2"}
データはコントローラ側に渡ってきてると思うのですが、
データの削除ができません。追加はできました。
削除するデータは、Favoriteのテーブル内のpost_idとuser_idと同じ値のデータを削除したいと思っています。
削除できないのは何が原因なのでしょうか。
php
1//お気に入り削除 2 public function deletefavoajax(){ 3 $this->autoRender = FALSE; //viewの出力を停止 4 if($this->request->is('ajax')) { 5 $postid = $this->request->data['postId']; 6 $userId = $this->request->data['userId']; 7 $this->Post->Favorite->deleteAll(array('post_id' => $postid,'user_id' => $userId)); 8 } 9 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/22 09:55
2016/09/22 11:38 編集
2016/09/23 05:11
2016/09/23 05:21 編集
2016/09/23 16:05