|
@@ -0,0 +1,128 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace General\Requests;
|
|
|
+
|
|
|
+use Illuminate\Contracts\Validation\Validator;
|
|
|
+use Illuminate\Foundation\Http\FormRequest;
|
|
|
+use Illuminate\Http\Exceptions\HttpResponseException;
|
|
|
+
|
|
|
+abstract class Request extends FormRequest
|
|
|
+{
|
|
|
+ public function authorize()
|
|
|
+ {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ public function failedValidation(Validator $validator)
|
|
|
+ {
|
|
|
+ throw (new HttpResponseException(response()->json([
|
|
|
+ 'code' => -1,
|
|
|
+ 'msg' => '请求错误',
|
|
|
+ 'data' => $validator->errors()->first(),
|
|
|
+ ], 200)));
|
|
|
+ }
|
|
|
+
|
|
|
+ public function messages()
|
|
|
+ {
|
|
|
+ return [
|
|
|
+ 'required' => '缺少参数:attribute',
|
|
|
+ 'integer' => ':attribute 必须是整数类型',
|
|
|
+ 'date' => ':attribute 必须是日期格式',
|
|
|
+ 'max' => [
|
|
|
+ 'numeric' => ':attribute不能超过 :max.',
|
|
|
+ 'file' => '文件:attribute大小不能超过 :max kilobytes.',
|
|
|
+ 'string' => '字符:attribute 不能超过 :max 长度.',
|
|
|
+ 'array' => '数组:attribute 不能超过 :max 长度.',
|
|
|
+ ],
|
|
|
+ 'accepted' => 'The :attribute must be accepted.',
|
|
|
+ 'active_url' => ':attribute 是个无效链接.',
|
|
|
+ 'after' => 'The :attribute must be a date after :date.',
|
|
|
+ 'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
|
|
|
+ 'alpha' => 'The :attribute may only contain letters.',
|
|
|
+ 'alpha_dash' => 'The :attribute may only contain letters, numbers, dashes and underscores.',
|
|
|
+ 'alpha_num' => 'The :attribute may only contain letters and numbers.',
|
|
|
+ 'array' => 'The :attribute must be an array.',
|
|
|
+ 'before' => 'The :attribute must be a date before :date.',
|
|
|
+ 'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
|
|
|
+ 'between' => 'The :attribute 必须处于 :min 和 :max 之间',
|
|
|
+ 'boolean' => 'The :attribute field must be true or false.',
|
|
|
+ 'confirmed' => 'The :attribute confirmation does not match.',
|
|
|
+ 'date_equals' => 'The :attribute must be a date equal to :date.',
|
|
|
+ 'date_format' => 'The :attribute does not match the format :format.',
|
|
|
+ 'different' => 'The :attribute and :other must be different.',
|
|
|
+ 'digits' => 'The :attribute must be :digits digits.',
|
|
|
+ 'digits_between' => 'The :attribute must be between :min and :max digits.',
|
|
|
+ 'dimensions' => 'The :attribute has invalid image dimensions.',
|
|
|
+ 'distinct' => 'The :attribute field has a duplicate value.',
|
|
|
+ 'email' => 'The :attribute must be a valid email address.',
|
|
|
+ 'ends_with' => 'The :attribute must end with one of the following: :values',
|
|
|
+ 'exists' => ':attribute 不存在.',
|
|
|
+ 'file' => 'The :attribute must be a file.',
|
|
|
+ 'filled' => 'The :attribute field must have a value.',
|
|
|
+ 'gt' => [
|
|
|
+ 'numeric' => 'The :attribute must be greater than :value.',
|
|
|
+ 'file' => 'The :attribute must be greater than :value kilobytes.',
|
|
|
+ 'string' => 'The :attribute must be greater than :value characters.',
|
|
|
+ 'array' => 'The :attribute must have more than :value items.',
|
|
|
+ ],
|
|
|
+ 'gte' => [
|
|
|
+ 'numeric' => 'The :attribute must be greater than or equal :value.',
|
|
|
+ 'file' => 'The :attribute must be greater than or equal :value kilobytes.',
|
|
|
+ 'string' => 'The :attribute must be greater than or equal :value characters.',
|
|
|
+ 'array' => 'The :attribute must have :value items or more.',
|
|
|
+ ],
|
|
|
+ 'image' => 'The :attribute 必须是一张图片.',
|
|
|
+ 'in' => '选项 :attribute 不在给定范围中.',
|
|
|
+ 'in_array' => 'The :attribute field does not exist in :other.',
|
|
|
+ 'ip' => 'The :attribute must be a valid IP address.',
|
|
|
+ 'ipv4' => 'The :attribute must be a valid IPv4 address.',
|
|
|
+ 'ipv6' => 'The :attribute must be a valid IPv6 address.',
|
|
|
+ 'json' => 'The :attribute must be a valid JSON string.',
|
|
|
+ 'lt' => [
|
|
|
+ 'numeric' => 'The :attribute must be less than :value.',
|
|
|
+ 'file' => 'The :attribute must be less than :value kilobytes.',
|
|
|
+ 'string' => 'The :attribute must be less than :value characters.',
|
|
|
+ 'array' => 'The :attribute must have less than :value items.',
|
|
|
+ ],
|
|
|
+ 'lte' => [
|
|
|
+ 'numeric' => 'The :attribute must be less than or equal :value.',
|
|
|
+ 'file' => 'The :attribute must be less than or equal :value kilobytes.',
|
|
|
+ 'string' => 'The :attribute must be less than or equal :value characters.',
|
|
|
+ 'array' => 'The :attribute must not have more than :value items.',
|
|
|
+ ],
|
|
|
+ 'mimes' => 'The :attribute must be a file of type: :values.',
|
|
|
+ 'mimetypes' => 'The :attribute must be a file of type: :values.',
|
|
|
+ 'min' => [
|
|
|
+ 'numeric' => 'The :attribute must be at least :min.',
|
|
|
+ 'file' => 'The :attribute must be at least :min kilobytes.',
|
|
|
+ 'string' => 'The :attribute must be at least :min characters.',
|
|
|
+ 'array' => 'The :attribute must have at least :min items.',
|
|
|
+ ],
|
|
|
+ 'not_in' => 'The selected :attribute is invalid.',
|
|
|
+ 'not_regex' => 'The :attribute format is invalid.',
|
|
|
+ 'numeric' => 'The :attribute must be a number.',
|
|
|
+ 'present' => 'The :attribute field must be present.',
|
|
|
+ 'regex' => 'The :attribute format is invalid.',
|
|
|
+ 'required_if' => 'The :attribute field is required when :other is :value.',
|
|
|
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
|
|
|
+ 'required_with' => 'The :attribute field is required when :values is present.',
|
|
|
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
|
|
|
+ 'required_without' => 'The :attribute field is required when :values is not present.',
|
|
|
+ 'required_without_all' => 'The :attribute field is required when none of :values are present.',
|
|
|
+ 'same' => 'The :attribute and :other must match.',
|
|
|
+ 'size' => [
|
|
|
+ 'numeric' => 'The :attribute must be :size.',
|
|
|
+ 'file' => 'The :attribute must be :size kilobytes.',
|
|
|
+ 'string' => 'The :attribute must be :size characters.',
|
|
|
+ 'array' => 'The :attribute must contain :size items.',
|
|
|
+ ],
|
|
|
+ 'starts_with' => 'The :attribute must start with one of the following: :values',
|
|
|
+ 'string' => 'The :attribute must be a string.',
|
|
|
+ 'timezone' => 'The :attribute must be a valid zone.',
|
|
|
+ 'unique' => 'The :attribute has already been taken.',
|
|
|
+ 'uploaded' => 'The :attribute failed to upload.',
|
|
|
+ 'url' => 'The :attribute format is invalid.',
|
|
|
+ 'uuid' => 'The :attribute must be a valid UUID.',
|
|
|
+ ];
|
|
|
+ }
|
|
|
+}
|