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

grovik
Člen | 72
+
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');
        }
Felix
Nette Core | 1245
+
0
-

Zkousel jsem to nasimulovat, ale bohuzel neuspesne. Pokud se ti to stale deje, posles mi nejake PoC?

grovik
Člen | 72
+
0
-

Asi jsem to už vyřešil jen teď nevím jak přesně a kde byl problém. Teď nemám možnost se podívat, mrknu se večer. Každopádně mám tušení, že tam byl problém, že při přidávání uživatele ten objekt toho Azylu nebo kompletní. Nebo tak něco.