• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Symfony4 Relacja ManyToOne

0 głosów
81 wizyt
pytanie zadane 6 marca w PHP, Symfony, Zend przez bromba Nowicjusz (160 p.)
edycja 7 marca przez bromba

Hej,

mam pytanie odnośnie relacji 2 encji, powiedzmy że wyglądających następująco:

class A
{
    /**
     * @ORM\Id()
     * @ORM\GeneratedValue()
     * @ORM\Column(type="integer")
     */
    private $id;

    /**
     * @ORM\ManyToOne(targetEntity="App\Entity\B") 
     */
    private $Number;
}

class B
{
    /**
     * @ORM\Id()
     * @ORM\GeneratedValue()
     * @ORM\Column(type="integer")
     */
    private $id;

    /**
     * @ORM\Column(type="string", length=50, unique=true)
     */
    private $Number;

 

Chciałbym zrobić relację z klasy A ManyToOne do encji klasy B gdzie kluczem nie będzie ID encji B a konkretne pole - $Number, w jaki sposób powinienem to zrobić?

2 odpowiedzi

0 głosów
odpowiedź 6 marca przez korsarz Gaduła (4,500 p.)

Do tego używa się mappedBy i inversedBy.

Tutaj więcej

komentarz 6 marca przez Bosswell Nałogowiec (32,750 p.)
Tylko on chce, aby pole $number było kluczem obcym.

mappedBy i inversedBy "przechowują" (w momencie zainicjowania) konkretne encje przypisane do nich .
komentarz 6 marca przez Bosswell Nałogowiec (32,750 p.)
Teraz pytanie. Czy aby na pewno musisz coś takiego zrobić? Wydaje mi się, że coś źle zaprojektowałeś tą relacje.
komentarz 7 marca przez korsarz Gaduła (4,500 p.)

@Bosswell,
 W takim razie chyba źle zrozumiałem pytanie.

0 głosów
odpowiedź 6 marca przez Ehlert Mędrzec (164,560 p.)
W takim przypadku nie wiedzę sensu istnienia id dla klasy B. Masz pole number które jest jakąś tam wartością i to unikalną.

Podobne pytania

0 głosów
1 odpowiedź 73 wizyt
pytanie zadane 11 lipca 2018 w PHP, Symfony, Zend przez suice Gaduła (3,400 p.)
0 głosów
1 odpowiedź 96 wizyt
pytanie zadane 4 stycznia 2018 w PHP, Symfony, Zend przez Kacper Duda Obywatel (1,970 p.)
0 głosów
1 odpowiedź 534 wizyt
pytanie zadane 2 czerwca 2018 w PHP, Symfony, Zend przez `Krzychuu Stary wyjadacz (12,630 p.)
Porady nie od parady
Forum posiada swój własny chat IRC, dzięki któremu będziesz mógł po prostu pogadać z innymi Pasjonatami lub zapytać o jakiś problem. Podstrona z chatem znajduje się w menu pod ikoną człowieka w dymku.IRC

64,021 zapytań

110,396 odpowiedzi

231,162 komentarzy

47,800 pasjonatów

Przeglądających: 179
Pasjonatów: 4 Gości: 175

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...