Bonjour,
Depuis quelques jours je rencontre un soucis lors de la mise à jour d'un booléen.
Je suis sous Laravel 8 et Postgres 13
J'ai l'erreur suivante :
mon champ en base de donnée est bien boolean (non null et false par defaut).[2021-05-03T12:29:21.026139+00:00] production.ERROR: SQLSTATE[42804]: Datatype mismatch: 7 ERREUR: la colonne « being_updated » est de type boolean mais l'expression est de type integer
LINE 1: update "offices" set "being_updated" = $1, "updated_at" = $2...
^
HINT: Vous devez réécrire l'expression ou lui appliquer une transformation de type. (SQL: update "offices" set "being_updated" = 1, "updated_at" = 2021-05-03 12:29:21 where "id" = 3)
et voici mon code
controller:
service:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $office = $this->officeService->update($request->only([ 'being_updated' <---- true (pas 1, ni 'true', ni 'T' mais bien true) ]), $id);
Je suis vraiment bloqué, est-ce que vous avez une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public function update(array $attributes, $id) { try { $office = $this->office->find($id); $office->update($attributes); } catch (\Exception $e) { Log::error($e->getMessage()); throw $e; } return $office; }
Merci.
Partager