/**
* 编辑保存
*
* @param Request $request
*
* @return JsonResponse|JsonResource
*/
public function update(Request $request)
{
$result = $this->service->update($this->getPrimaryValue($request), $request->all());
return $this->autoResponse($result, __('admin.save'));
}
/**
* service 中实际处理修改逻辑的方法, 可以在自己的 service 中重写该方法
*
* @param $primaryKey
* @param $data
*
* @return bool
*/
public function update($primaryKey, $data): bool
{
$columns = $this->getTableColumns();
$model = $this->query()->whereKey($primaryKey)->first();
foreach ($data as $k => $v) {
if (!in_array($k, $columns)) {
continue;
}
$model->setAttribute($k, $v);
}
return $model->save();
}