Laravel 5中的FormRequests是验证和授权的好方法.
但是如果我必须验证包含一对多关系数据的请求,如何处理.
例如,如果我有简单的发票应用程序.
一张发票有很多服务.
我的表单发布请求包含以下数据:
但是如果我必须验证包含一对多关系数据的请求,如何处理.
例如,如果我有简单的发票应用程序.
一张发票有很多服务.
我的表单发布请求包含以下数据:
array (size=5) 'date' => string '2014-11-14' (length=10) 'num' => string '175' (length=3) 'client_id' => string '5' (length=1) 'vat' => string '1' (length=1) 'services' => array (size=2) 0 => array (size=3) 'description' => string 'Service 1' (length=36) 'value' => string '10' (length=2) 'items' => string '2' (length=1) 1 => array (size=3) 'description' => string 'Service 2' (length=11) 'value' => string '20' (length=2) 'items' => string '2' (length=1)
现在在InvoiceFormRequest类中,我可以验证发票数据,但是如何继续服务:
<?PHP namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; use Response; class InvoiceFormRequest extends FormRequest { public function rules() { return [ 'date' => 'required','num' => 'required','client_id' => 'required','vat' => 'required' ]; } public function authorize() { return true; } }
提前致谢!
更新:
正如我在Laravel中阅读过here,可以写下这样的东西:
'services.*.description' => 'required','services.*.value' => 'required:numeric','services.*.items' => 'required:integer'