问题描述
我在使用 CodeIgniter 4 软删除时遇到问题。 我在模型中设置了 $useSoftDelete = true;但是每当我删除一条记录时,delete 方法总是将它从我的表中清除。
这是我模型中的代码:
// Dates
protected $useTimestamps = true;
protected $useSoftDelete = true;
protected $dateFormat = 'datetime';
protected $createdField = 'cust_created_at';
protected $updatedField = 'cust_updated_at';
protected $deletedField = 'cust_deleted_at';
public function delete($id = '')
{
$customer = $this->customerModel->find($id);
if (isset($customer)) {
$this->customerModel->delete($id);
session()->setFlashdata('success',"Customer $customer->cust_name successfully deleted.");
return redirect()->to(site_url('customer'));
} else {
session()->setFlashdata('errors',["Cannot find customer ID $id."]);
return redirect()->to(site_url('customer'));
}
}
我错过了任何代码吗? 提前致谢。
解决方法
输入错误protected $useSoftDelete = true;
。
应该是protected $useSoftDeletes = true;
参考: https://codeigniter4.github.io/userguide/models/model.html#configuring-your-model