php - How to add required if validation rule if a file has been uploaded
I'm working with Laravel 5.8 and here is my validation request form:
public function rules()
{
return [
'art_audio_file' => ['nullable', 'file', 'mimes:audio/mpeg,mpga,mp3,wav,aac'],
'art_audio_file_title' => ['required_if: IF USER HAS UPLOADED FILE']
];
}
I wonder, how can I make art_audio_file_title
required if art_audio_file
is not empty.
So how can I do that?
Answer
Solution:
You can add your logic like below:
return [
'art_audio_file' => ['nullable', 'file', 'mimes:audio/mpeg,mpga,mp3,wav,aac'],
'art_audio_file_title' => [
Rule::requiredIf(function() {
return !empty($this->request->get('art_audio_file'));
})
]
];
or in your case simply:
'art_audio_file_title'=>'required_with:art_audio_file'