Symfony - relacje

0

Cześć.
Ostatnio zajmuję się Symfony i mam problem na poziomie definiowania relacji.
Załóżmy że mam dwie tabele.

users | avatars
id | id
name | user_id
email | src

relację chcę wygenerować poleceniem. I faktycznie jest ona generowana, w pliki encji User dodawane jest kilka wartości (właściwie dwie metody)

  /**
     * @ORM\OneToOne(targetEntity="App\Entity\User\Avatar", cascade={"persist", "remove"})
     */
    private $avatar;

public function getAvatar(): ?Avatar
    {
        return $this->avatar;
    }

    public function setAvatar(?Avatar $avatar): self
    {
        $this->avatar = $avatar;

        return $this;
    }

w bazie w kolumnie users dodawane jest pole avatar_idi faktycznie kiedy wpiszę tam id rekordu z tabeli avatars mogę się odwołać do tych wartości poprzez $this->getAvatar()
jednak mi nie do końca o to chodzi. Nie chcę dodawać dodatkowego pola w users tylko tak zdefiniować relację aby działała ona na polu user_id w tabeli avatars i w taki sposób się te dwie tabele łączyły.

Jak mogę to osiągnąć?

1

Poczytaj sobie o dwóch "stronach" relacji: mappedBy i inversedBy. Klasa dodana w inversedBy, to klasa, która nie posiada FK, a ta, która jest dodana w mappedBy posiada FK.

1 użytkowników online, w tym zalogowanych: 0, gości: 1