1

I use Laravel 5

in Update,Create Request files

public function rules()
{
    return [
        'image' => 'required', 
        'description' => 'required', 
        'link' => 'required', 

    ];
}

but update request needs change image rule because if user modify record image is not required.

I think only exists or not null image, is enough.

Marcin Nabiałek
  • 109,655
  • 42
  • 258
  • 291
Amir Hosseinzadeh
  • 7,360
  • 4
  • 18
  • 33

2 Answers2

1

What about validating image in Laravel way?

place this code in controller

public function rules()
{
    return [
        'image' => 'image',
        //other rules
    ];
}

https://laravel.com/docs/5.5/validation#rule-image

public function rules()
{
    return [
        'image' => 'required_without:id|image',
        //other rules
    ];
}

Explanation:
Most probably if you are creating new record, id value is not present (by default it is auto-assigned by DataBase), but in case of edit or update id will be present in request (by default record is found by id value) and image is not required
refer to https://laravel.com/docs/5.5/validation#rule-required-without

0

You can create UpdateRequest with the following rules:

public function rules()
{
    return [
        'description' => 'required', 
        'link' => 'required', 
    ];
}

and use this request for updating Image and create StoreRequest that will extend from UpdateRequest with the following rules:

public function rules()
{
    return array_merge(parent::rules(), [
        'image' => 'required', 
    ]);
}

and use this request for adding new image

Marcin Nabiałek
  • 109,655
  • 42
  • 258
  • 291