I have file upload option in form. I have added field in model and added vlaidation rules as below.
[['file1'], 'file', 'skipOnEmpty' => false, 'extensions' => 'pdf,png,jpg', 'maxSize' => "10485760", 'tooBig' => "Maximum upload file size is 10MB"]
In edit mode, file field is not required. So I need to skip required field validation for update scenario but if user choose a file in update form, then extension, size need to be validated.
I changed rule as below.
[['file1'], 'file', 'skipOnEmpty' => false, 'extensions' => 'pdf,png,jpg', 'maxSize' => "10485760", 'tooBig' => "Maximum upload file size is 10MB", "on" => ["insert"]],
[['file1'], 'file', 'skipOnEmpty' => true, 'extensions' => 'pdf,png,jpg', 'maxSize' => "10485760", 'tooBig' => "Maximum upload file size is 10MB", "on" => ["update"]],
But it is still asking upload a file in edit form.
Thanks
try below rules
[['file1'], 'file', 'skipOnEmpty' => true, 'extensions' => 'pdf,png,jpg', 'maxSize' => "10485760", 'tooBig' => "Maximum upload file size is 10MB"],
[['file1'], 'required', 'on' => 'insert'],
add scenario in your create action not in update
$model->scenario = 'insert';