記事のカテゴリ機能を作っていまして、カテゴリを削除した際に、そのカテゴリに属している記事のデータも削除したいと考えています。
現在できていることはカテゴリの削除です。しかしできないこととして、カテゴリに属している記事の削除ができません。
カテゴリのdeleteメソッドの書き方について伺いたく思います。
諸事情がありまして、MySQLの外部制約キーを利用しない方針となりました。
PHP
1use Cake\ORM\TableRegistry; 2 3//・・・略・・・ 4 $this->request->allowMethod(['post', 'delete']); 5 $articlecategory = $this->Articlecategories->get($id); 6 if ($this->Articlecategories->delete($articlecategory)) { 7 //ここに記事カテゴリテーブルの情報も削除するクエリなげる。 8 $articles = TableRegistry::get('Articles'); 9 $articles = $articles->find('all')->where(['category_id' => $id]); 10 $articles->Articles->delete($articles); 11 12 $this->Flash->success(__('カテゴリ名及びカテゴリ内すべての記事を削除しました')); 13 } else { 14 $this->Flash->error(__('削除エラー')); 15 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/10 01:33