update boolean Datatype mismatch
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 :
Citation:
[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)
mon champ en base de donnée est bien boolean (non null et false par defaut).
et voici mon code
controller:
Code:
1 2 3 4
|
$office = $this->officeService->update($request->only([
'being_updated' <---- true (pas 1, ni 'true', ni 'T' mais bien true)
]), $id); |
service:
Code:
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;
} |
Je suis vraiment bloqué, est-ce que vous avez une idée ?
Merci.