我有一個CakePHP模型,其中一個Job hasmany Employees和一個Employee屬於一個Job。我用來編輯作業和員工的視圖是一個作業視圖。下面是我的工作控制器代碼:在CakePHP中使用PatchEntity從關聯表中刪除記錄
$job = $this->Jobs->get($id, [
'contain' => ['Employees']
]);
if ($this->request->is(['patch', 'post', 'put'])) {
$req = $this->request->data;
$job = $this->Jobs->patchEntity($job, $req, [
'validate' => false,
'associated' => ['Employees']
]);
$saveResult = $this->Jobs->save($job, [
'validate' => false,
'associated' => ['Employees']
]);
$這個 - >請求 - >數據是這樣的:
'employees' =>[
0 => [
'id' => 1,
... etc ...
當我加入的員工,這 - $>請求 - >數據有更多的數組元素和補丁將新記錄添加到employees表中。
當我刪除員工時,$ this-> request-> data的數組元素更少。但該補丁不會刪除任何記錄。 (我正在修復array_values在數據返回時排序的數組)。
當請求中的記錄較少時,我可以通過修補程序刪除記錄嗎?
如果不是,刪除的最佳方法是什麼?
你的員工關聯配置是什麼樣的? – ndm
@swmcdonnell,你是否設法解決這個問題?請讓我知道ASAP –