wYm35
wYm35

Reputation: 39

Errors when patching an entity

I'm usin' cakephp 3.6 & tryin' to edit some entity fields before save it, so when I use pathchEntity to edit those fields:

$booking->set([
    'status'  => 1,
    'deposit' => $this->request->getData('deposit')
]);

I got errors of entity validation before save it, so how I should do to edit those fields without gettin' errors;

\src\Controller\BookingsController.php (line 253)
[
    'property_id' => [
        '_required' => 'This field is required'
    ],
    'deposit' => [
        'fileType' => 'Veuillez introduire un fichier de type: PDF, JPG.'
    ],
    'last_name' => [
        '_required' => 'This field is required'
    ],
    'first_name' => [
        '_required' => 'This field is required'
    ],
    'phone' => [
        '_required' => 'This field is required'
    ],
    'travelers_count' => [
        '_required' => 'This field is required'
    ],
    'travelers_type' => [
        '_required' => 'This field is required'
    ],
    'start' => [
        '_required' => 'This field is required'
    ],
    'end' => [
        '_required' => 'This field is required'
    ],
    'nights_count' => [
        '_required' => 'This field is required'
    ],
    'discount' => [
        '_required' => 'This field is required'
    ],
    'total' => [
        '_required' => 'This field is required'
    ],
    'total_discount' => [
        '_required' => 'This field is required'
    ]
]

Upvotes: 0

Views: 78

Answers (1)

Sehdev
Sehdev

Reputation: 5662

You are facing this error because you may have defined the below rule in your model.

$validator->requirePresence('user_id');

This checks validation on both create and update operations. You can change that as below

$validator->requirePresence('user_id', 'create');

This means The field’s presence is required when validating a create operation.

https://book.cakephp.org/3.0/en/core-libraries/validation.html

Hope this will help.

Upvotes: 1

Related Questions