レコードを削除するために、次のような関数を作成しました。
echo $this->Form->postLink('<i class="icon-trash icon-white"></i>',
array('action' => 'delete',$distance['Distance']['id'], 'Distance'),
array('confirm' => 'Are you sure?', 'class' => 'btn btn-danger', 'escape' => false));
2 つのパラメーターを渡して、コントローラーで関数 delete を呼び出す必要があります。
しかし、Chrome コンソールでこのタイプのエラーが発生します。
Cakephp オブジェクト # にはメソッド 'submit' がありません
以前は機能していましたが、削除ボタンが機能する場合と機能しない場合があります。
コントローラーコードは次のとおりです。
public function delete($id, $model) {
$this->loadModel($model);
$this->Session->setFlash($id +" " + $model);
if ($this->request->is('get')) {
throw new MethodNotAllowedException();
}
if ($this->$model->delete($id)) {
$this->Session->setFlash('The item has been deleted');
if($model == "Project" || $model == "Car"){
$this->redirect(array('action' => 'preferences'));
}else{
$this->redirect(array('action' => $model.'s'));
}
}
}