![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 169 Pomógł: 1 Dołączył: 30.09.2010 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Pracuje na sf 3.
Mam "doinstalowaną" Sonatę Pytanie: Jak pobrać em w środku encji? czy w ogóle się da? Potrzebne mi to do wykonania specjalengo zapytania na bazie. W kontrolerze to wiem jak pobrać natomiast gorzej w encji. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
A coż to za specjalne zapytanie potrzebujesz wykonać, że w encji chcesz dorwać entity manager?
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 169 Pomógł: 1 Dołączył: 30.09.2010 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
no jest to select dość złożony który wykorzystuje między innymi if'y group by order i limit etc.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
No dobra, ale czemu chcesz to umieścić w entity?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 169 Pomógł: 1 Dołączył: 30.09.2010 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Bo chcę łatwo się odwołać juz w /src/AppBundle/Admin/ProgramAdmin.php w metodzie configureListFields (czyli na liście/tabeli programów):
i teraz jeśli w encji dam metodę getCountmath i tam moje zapytanie ze zwróconą wartością to na tej liście ładnie mi wyświetli wyniki |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
A pomyślałeś, że w takim przypadku dla 100 elementów na liście wykonasz 100 zapytań? Nie uważasz, że to troche zbyt dużo? Nie lepiej w Repository stworzyć odpowiednią metodę do pobierania danych, które są Ci potrzebne w jednym zapytaniu?
Ten post edytował kapslokk 11.08.2016, 09:02:09 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 169 Pomógł: 1 Dołączył: 30.09.2010 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
hmmm ale jak to wyświetlić na mojej liście w takim razie?
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 2 355 Pomógł: 533 Dołączył: 15.01.2010 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Kompletnie nie wiem o co Ci chodzi, wytłumacz dokładnie co chcesz osiągnąć, a nie zadawaj złych pytań. Wygląda na problem typu: Chcesz usmażyć upolowanego dzika, a na forum pytasz, jak rozpalić w domu ognisko. Na 99% rozpalenie ogniska w domu jest niepotrzebne.
Jeśli chcesz zrobić śmietnik w kodzie, to możesz sobie wywołać tam entity manager. W encji:
W wywołaniu encji:
Ale to jest słabe. Z tego co zrozumiałem, musisz użyć entity repository, a nie pakować to do entity. A więc: https://symfony.com/doc/current/doctrine.ht...ository-classes + https://symfony.com/doc/current/doctrine/repository.html Ten post edytował Damonsson 11.08.2016, 09:10:54 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 169 Pomógł: 1 Dołączył: 30.09.2010 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
no wiem, że to jest słabe ale i tak nie o to mi chodziło bo w Twoim przykładzie i tak musze podac w parametrze konstrukora entity managera a mi chodzi aby go nie przekazywac tylko poprostu skorzystać z niego w encji
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 2 355 Pomógł: 533 Dołączył: 15.01.2010 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Ale jak? Jesteś czarodziejem?
![]() W gwoli ścisłości DependencyInjection jest bardzo sympatyczne. Słabe jest pakowanie do encji metod, zwracających wyniki customowych zapytań. Entity repository służy do tego co chcesz zrobić, albo przynajmniej tak mi się wydaje, co chcesz zrobić. Przeczytaj sobie dokumentację (wklejam jeszcze raz) https://symfony.com/doc/current/doctrine/repository.html Ten post edytował Damonsson 11.08.2016, 10:15:31 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 169 Pomógł: 1 Dołączył: 30.09.2010 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Dobra to z innej beczki...
Jak w /src/AppBundle/Admin/ProgramAdmin.php w metodzie configureListFields (czyli na liście/tabeli programów) dodać dodatkowo swoją kolumnę aby przy każdym wierszu była inna wartość która będzie pochodzić z zapytania/metody w encji czy repository obojętnie? |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 2 355 Pomógł: 533 Dołączył: 15.01.2010 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Zakładam, że używasz Sonata Admin Bundle. Nie używam, więc pewien nie jestem, ale tak samo jak metody z encji, tak samo powinieneś móc pobrać metody z entity repository:
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 169 Pomógł: 1 Dołączył: 30.09.2010 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 2 355 Pomógł: 533 Dołączył: 15.01.2010 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Pewnie musiałbyś to jeszcze dodać do Forma. A z ciekawości co ma być w metodzie programs.countmath?
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 29.06.2025 - 19:17 |