【发布时间】:2020-04-19 04:24:54
【问题描述】:
我在 Laravel 中创建了一个 PostRequest(使用 php artisan make:request PostRequest)。我有三列:标题、内容和标签)。标签列可以为空。当我添加一些帖子时没有问题,我可以添加标题、内容和标签。
但是,当我想编辑帖子时,标题和内容列会发生变化,但标签列不会。怎么办?
控制器
public function update(PostRequest $request, Post $post)
{
$validated = $request->validated();
Post::whereId($post->id)->update($validated);
return redirect('/posts')->with('success', 'success');
}
PostRequest.php
public function rules()
{
switch ($this->method()) {
case 'POST':
{
return [
'title' => 'required|max:512',
'content' => 'required',
];
}
case 'PUT':
case 'PATCH':
{
return [
'title' => 'required|max:512',
'content' => 'required',
];
}
default:
break;
}
}
Post.php(模型)
protected $fillable = [
'title',
'content',
'tag',
'created_at',
];
【问题讨论】:
-
表单请求只返回您定义的字段。如果您希望
tag返回,请在您的PostRequest中创建验证规则
标签: php laravel laravel-6 laravel-validation