Doctrine / Nettrine chyba: PDO::quote(): Argument #1 ($string) must be of type string

grovik
Člen | 54
+
0
-

Zdravím,

při snaze vytvořit vazbu (mám existující entitu User a následně na základě toho, jak se uživatel rozhodně vytovřím entitu Azyl a chci je propojit).
Azyl se propojí naprosto v pohodě a dostane přiřazenou entitu User.
Ale při snaze uložit entitu User s nově nastavenou vazbou dostanu chybu:

PDO::quote(): Argument #1 ($string) must be of type string, App\Model\Orm\Entity\Azyl given

Naprosto netuším kdy se tam tahle věc vezme, string tam nikde neukládám. Má s tím spojené i další dotazy, ale tohle prostě nechápu. Kde se ta chyba vezme.

Vazby


    #[ORM\OneToOne(inversedBy: 'azyls', targetEntity: Users::class)]
    #[ORM\JoinColumn(name: 'user_id', referencedColumnName: 'id')]
    private Users $user;
    #[ORM\OneToOne(inversedBy: "user", targetEntity: Azyl::class)]
    #[ORM\JoinColumn(name: "azyl_id", referencedColumnName: "id")]
    #[ORM\Column(nullable: true)]
    private ?Azyl $azyls;

Kód toho jak se ukládají změny:

  if ($values->role === RoleTypeEnum::ROLE_AZYL)
        {
            $azyl = new Azyl();

            $users = $this->usersRepository->getUserById($this->getPresenter()->getUser()->getId());
            $users->setRole(RoleTypeEnum::ROLE_AZYL);
            $users->setUpdatedAt(new DateTimeImmutable());
            $users->setUpdatedBy($this->usersRepository->getUserById($this->getPresenter()->getUser()->getId()));

            $azyl->setUser($users);
            $users->setAzyls($azyl);

            $this->azylRepository->saveAzyl($azyl);
            $this->usersRepository->addUser($users);

            $this->getPresenter()->flashMessage('Od této chvíle jste v roli Azylu!', 'alert-success');

            $this->redirect('Azyl:profil');
        }