laravel - Laravel 动态生成的字段验证
问题描述
我有一个提交大量图片的表单,假设有 5 张图片。我将它们命名为 img1、img2..、img5。现在我正在一一验证这些字段。
我的验证码
$rules = [
'image1' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:3072',
'image2' => 'image|mimes:jpeg,png,jpg,gif,svg|max:3072',
'image3' => 'image|mimes:jpeg,png,jpg,gif,svg|max:3072',
'image4' => 'image|mimes:jpeg,png,jpg,gif,svg|max:3072',
'image5' => 'image|mimes:jpeg,png,jpg,gif,svg|max:3072',
];
$msg = [
'image1.required' => 'Image is required',
'image1.image' => 'Please upload an Image for Image ',
'image1.mimes' => 'Image type should be jpeg or jpg or png or gif or svg',
'image1.max' => 'Image size should be less than or equal 3MB',
'image2.image' => 'Please upload an Image for Image ',
'image2.mimes' => 'Image type should be jpeg or jpg or png or gif or svg',
'image2.max' => 'Image size should be less than or equal 3MB',
'image3.image' => 'Please upload an Image for Image ',
'image3.mimes' => 'Image type should be jpeg or jpg or png or gif or svg',
'image3.max' => 'Image size should be less than or equal 3MB',
'image4.image' => 'Please upload an Image for Image ',
'image4.mimes' => 'Image type should be jpeg or jpg or png or gif or svg',
'image4.max' => 'Image size should be less than or equal 3MB',
'image5.image' => 'Please upload an Image for Image ',
'image5.mimes' => 'Image type should be jpeg or jpg or png or gif or svg',
'image5.max' => 'Image size should be less than or equal 3MB',
];
$this->validate($req, $rules, $msg);
请你告诉我是否有更好的方法来做到这一点?:)
解决方案
使用数组而不是给文件命名
多个文件的 Laravel 验证规则。
$rule = ['image.*' => 'required|mimes:jpeg,png,jpg,gif,svg|max:3072'];
$msg = ['image.*.image' => 'Please upload an Image for Image ',
'image.*.mimes' => 'Image type should be jpeg or jpg or png or gif or svg',
'image.*.max' => 'Image size should be less than or equal 3MB'];
推荐阅读
- elasticsearch - 聚合词的顺序是否会影响弹性搜索中的查询速度?
- postgresql - 将列转换为字符串 postgresql
- python - Python:列出您的平台支持的“格式代码”日期?
- android - 如何使用旧 api(如 16)构建 android 应用程序?
- python - 如何使用 matplotlib 在 Pandas 中绘制两个元组列表?
- python - 分层图表中每个图表对应的不同颜色?
- docker - 为什么我用 Click 库编写的这个 CLI 应用程序不能正常工作?
- sql-server - SQL 高 CPU 使用率(SharePoint 查询)
- css - 如何覆盖引导表行背景颜色
- google-cloud-pubsub - PubSubLite:跨区域访问 PubSub Lite