model(); if (!$model->getKey()) { $model->exists = true; $model->setAttribute($model->getKeyName(), $form->getKey()); } $result = null; \Illuminate\Support\Facades\DB::transaction(function () use ($form, $model, &$result) { $updates = $form->updates(); // 获取关联关系数据,但不处理它们 [$relations, $relationKeyMap] = $this->getRelationInputs($model, $updates); if ($relations) { $updates = \Illuminate\Support\Arr::except($updates, array_keys($relationKeyMap)); } // 确保status是整数 if (isset($updates['status'])) { $updates['status'] = (int)$updates['status']; } foreach ($updates as $column => $value) { $model->setAttribute($column, $value); } $result = $model->update(); // 我们不调用updateRelation方法,因为它可能会导致错误 // 土地模型没有复杂的关联关系需要在表单中更新 }); return $result; } }