isUpdate()) { return [ 'name' => 'required|string|max:50', 'slug' => 'required|string|max:50|unique:task_categories,slug', 'description' => 'nullable|string|max:255', 'icon' => 'nullable|string|max:255', 'form_schema' => 'nullable|json', 'sort' => 'nullable|integer|min:0', 'status' => 'nullable|integer|in:0,1', ]; } $id = $this->route('id'); return [ 'name' => 'required|string|max:50', 'slug' => [ 'required', 'string', 'max:50', Rule::unique('task_categories', 'slug')->ignore($id), ], 'description' => 'nullable|string|max:255', 'icon' => 'nullable|string|max:255', 'form_schema' => 'nullable|json', 'sort' => 'nullable|integer|min:0', 'status' => 'nullable|integer|in:0,1', ]; } public function messages(): array { return [ 'name.required' => '分类名称不能为空', 'slug.required' => '分类标识不能为空', 'slug.unique' => '分类标识已存在', ]; } }