Laravel 表单验证:多种验证规则设定的类型
在Laravel中,可以为表单请求设置多种验证规则。以下是一个例子,其中包含了几种常见的验证类型:
use Illuminate\Foundation\Http\FormRequest;
class StorePostRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true; // 或者根据需要修改验证逻辑
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'title' => 'required|max:255',
'content' => 'required',
'publish_at' => 'required|date',
'tags' => 'array',
'tags.*' => 'exists:tags,id', // 确保tags数组中的每个元素在tags表的id列存在
];
}
}
在这个例子中,我们定义了一个StorePostRequest
请求来处理发布帖子的数据验证。我们对标题(title
)、内容(content
)、发布日期(publish_at
)以及标签(tags
)都设置了不同的验证规则。例如,title
字段是必填的(required
)且最大长度不得超过255个字符;content
字段也是必填的;publish_at
是必填的且必须是一个有效的日期;tags
必须是一个数组,而数组中的每个元素必须在tags
表的id
列存在。
评论已关闭