• 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.

Object Storage Arubacloud
0 głosów
153 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 (212,670 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ź 317 wizyt
pytanie zadane 9 lipca 2019 w PHP przez mi-20 Stary wyjadacz (13,190 p.)
0 głosów
1 odpowiedź 180 wizyt
pytanie zadane 18 października 2018 w PHP przez Tom K Nowicjusz (190 p.)
0 głosów
1 odpowiedź 422 wizyt

92,573 zapytań

141,423 odpowiedzi

319,645 komentarzy

61,959 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...