![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Generalnie problem podobny, ale i taki sam jak tu:
http://stackoverflow.com/questions/2242246...uses-blank-page ale niestety nie ma tam żadnej propozycji. Minęło troszkę czasu ale problem jak widać nadal występuje. W skrócie - mamy 2 repozytoria. Wstrzykuje jedno repo do drugiego przez konstruktor i wszystko działa. Robię odwrotnie i biała strona, null, zero błędów, żadnych logów nie tworzy. Próbowałem też z:
i ten sam efekt :/ -------------------- |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 673 Pomógł: 106 Dołączył: 31.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
Jesteś w stanie stworzyć prosty przykład i opublikować kod? Problem wydaje się być co najmniej dziwny, jedyne co mi przychodzi do głowy to spytać czy określiłeś jaką klasę DI ma wstrzykiwać w ramach tego interfejsu?
-------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Strzelam że chodzi o loop. Wstrzykując na wzajem klasy do konstruktora przechodzi proces od nowa. Jedynym wyjściem jest uniknięcie takich sytuacji dołączania klas siebie na wzajem. Sprawdź czy jednak nie dasz rady tego wyeliminować.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
To co Pyton_000 proponuje też mi się wydaje najbardziej prawdopodobne. Wywołują się konstruktory wzajemnie i wywala skrypt bez żadnego śladu w logach.
Problem muszę widocznie rozwiązać na poziomie logiki biznesowej aniżeli kodu (bo co tu próbować kombinować, wywołać metodę bez ładowania klasy...). Korzystam z https://github.com/andersao/l5-repository Mam 2 repozytoria dla dwóch modeli w relacji. W jednym REPO dodaje z formularza Klasę i Uczniów. Repo uczestników wstrzykuję i dodaje bezpośrednio ich z poziomu Repo Klasa. No i teraz np. dodaj samego Ucznia i chciałbym wstrzyknąć REPO Klasy aby np. zaktualizować kolumnę z liczbą osób w klasie. Jest na to jakiś pattern, może repozytoria nie powinny od siebie wzajemnie zależeć? Jednym z działający rozwiązań jest przekazanie REPO przez parametr metody (argument $this). I potem w metodzie $repo-> Ale słabo to wygląda, faktycznie muszę te repozytoria przemyśleć na nowo albo dodać jeszcze jedna warstwę np. coś w stylu Services (choć na razie tego unikam bo póki co same repozytoria mi czasem sprawiają problemy logiczne - gdy się głowię co umieścić w modelu, a co w repo więc dodanie kolejnego stopnia na razie odkładam). Ten post edytował markonix 19.04.2017, 13:53:56 -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 19:37 |