Sorry for the confusion .. reports is a array and it contains multiple values.
protected $rules = [
'title' =>'required|string|max:255',
'slug' =>"required|alpha_dash|min:5|max:255|unique:posts,slug",
'image' =>'sometimes|image',
'category_id' =>'required|integer',
'reports' => 'sometimes',
'reports.*.report_type_id' => 'required|integer',
];
I have implemented as you suggested , however it is not working the validation for me, if I do not include the "report_type_id" as below:
"reports":[
{
"report":"Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus",
"test_id": 388594
},
{
"report":"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo",
"report_type_id":1,
"test_id": 388595
},
{
"report":"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo",
"report_type_id":2,
"test_id": 388596
}
],
It is throwing database(MYSQL) error but it is not triggering the validation at all.
{
"message": "Undefined index: report_type_id",
"status_code": 500,
}
Thank you for your great help!