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

Symfony - tworzenie obiektu, który ma 3 relacje.

0 głosów
266 wizyt
pytanie zadane 20 kwietnia 2020 w PHP przez XiverKi Bywalec (2,050 p.)

Chciałbym dowiedzieć się czy sposób, w jaki tworze tego typu rzeczy jest poprawny, czy powinienem robić to inaczej.

Otóż, mam encje w bazie, która posiada relacje z trzema innymi encjami. Teraz chcąc usunąć tą encję z bazy, musze najpierw pobrać ją z repo, potem przekazać do entity Managera aby ją usunął.

Problem, w tym, że aby ją usunąłem musze najpierw zbudować trzy składowe obiekty.

 

            $kind = $kindService->makeKindObject($kindId);
            $type = $typeService->makeTypeObject($typeId);
            $property = $propertyService->makePropertyObject($propertyid);

                $ar = $availabilityRepository->findOneBy(
                    [
                        'advertKind' => $kind,
                        'advertType' => $type,
                        'property' => $property,
                    ]
                );
                $propertyLinkService->deleteLink($ar);

Jest to poprawne rozwiązanie?

1 odpowiedź

0 głosów
odpowiedź 21 kwietnia 2020 przez Ehlert Ekspert (215,190 p.)
wybrane 21 kwietnia 2020 przez XiverKi
 
Najlepsza

Używaj prawidłowej nomenklatury. Wyciągając obiekty z bazy lepiej używać słów find, search, get. Ty ich nie tworzysz. Tworzy je orm na niższym poziomie.

Generalnie wygląda ok. Jeśli te 3 relacje tworzą kryteria po których chcesz szukać tego obiektu. Zawsze można ładnie użyć QueryBuildera w repo i wtedy nie trzeba angażować tych 3 serwisów.

No i wypada sprawdzić czy na pewno coś znalazłeś. 

komentarz 21 kwietnia 2020 przez XiverKi Bywalec (2,050 p.)
Bardzo dziękuję za tą analizę :)

Podobne pytania

0 głosów
1 odpowiedź 455 wizyt
pytanie zadane 9 lipca 2019 w PHP przez mi-20 Stary wyjadacz (13,250 p.)
0 głosów
1 odpowiedź 312 wizyt
pytanie zadane 18 października 2018 w PHP przez Tom K Nowicjusz (190 p.)
0 głosów
1 odpowiedź 688 wizyt

93,691 zapytań

142,610 odpowiedzi

323,215 komentarzy

63,216 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...