[SF][SF4.4] FOSUserBundle 2.2.x-dev i problem z encjami User oraz Group |
[SF][SF4.4] FOSUserBundle 2.2.x-dev i problem z encjami User oraz Group |
7.02.2020, 15:58:55
Post
#1
|
|
Grupa: Zarejestrowani Postów: 159 Pomógł: 0 Dołączył: 21.08.2011 Ostrzeżenie: (0%) |
Witam.
Dokonuję migracji z wersji 3.4 frameworka na wersję 4.4 i zaciąłem się na małej popierdółce. Byłem zmuszony nieco przerobić klasy User i Group w customowym bundlu, którego używam do zarządzania userami, jednak podczas walidacji (php bin/console doctrine:schema:validate) wyskakuje błąd z interfejsami w tle: Cytat Compile Error: Declaration of App\UserBundle\Entity\User::addGroup(App\UserBundle\Entity\Group $group): App\UserBundle\Entity\User must be compatible with FOS\UserBundle\Model\User::addGroup(FOS\UserBundle\Model\GroupInterface $group) Pierwotnie w encji User miałem zapis:
Natomiast w Group widniał zapis:
Przejrzałem pliki z modelami od wtyczki FOSUserBundle i tam nastąpiła zmiana - pojawiły się interfejsy. Próbowałem dokonać korekt w encjach w poniższy sposób i przy użyciu polecenia php bin/console make:entity --regenerate utworzyć gettery i settery: User
Group
Jednak w encji User nie pojawiają się oczekiwane rezultaty - nie ma kolekcji dla groups, ani setterów i getterów, ponadto brak jest odpowiedniej tabeli w bazie danych. Niby dopisałem "z palca" do encji User fragment:
ale dlaczego tak się dzieje, że nie pojawia się to automatycznie po przebudowaniu modelu? Zapewne robię jakiś prosty błąd, którego nie widzę na ten moment. Ktoś z Was walczył z FOSUserBundle na SF 4.4 i wie, jak pozbyć się wspomnianych niedogodności? Będę wdzięczny za poświęcony czas i pomoc. |
|
|
10.02.2020, 08:54:31
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Wywal `: self` z `addGroup` i zadziała.
A tak ogólnie to pozbądź się FOS i problem sam się rozwiąże |
|
|
10.02.2020, 14:32:22
Post
#3
|
|
Grupa: Zarejestrowani Postów: 159 Pomógł: 0 Dołączył: 21.08.2011 Ostrzeżenie: (0%) |
Dzięki za zainteresowanie tematem.
Wiem, że FOS w wersji 2 to kobyła z błędami i nie radzi sobie z SF 4.4, tym bardziej nie ma wsparcia dla SF 5, jednak ma się pojawić wersja 3, być może developerzy naprawią wszelkie niedogodności. Na ten moment nie posiadam odpowiednich zasobów czasowych, aby napisać na nowo kod odpowiedzialny za rejestrację, logowanie, edycję profilu, przypomnienie hasła i weryfikację utworzonego konta dla userów. Jak zwykle wszystko "na wczoraj". W przyszłości to ogarnę, a teraz po prostu skopiowałem odpowiednie fragmenty z plików umieszczonych w katalogu vendor\friendsofsymfony\user-bundle\Model Encje wyglądają u mnie tak - przedstawiam ważniejsze fragmenty (po przebudowaniu setterów i getterów poleceniem php bin/console make:entity --regenerate musiałem dokonać ręcznych korekt) i w tej chwili nie ma błędów podczas walidacji, jak również zachowana jest synchronizacja z bazą danych, a wtyczka wydaje się działać poprawnie: User
Group
Pozdrawiam. |
|
|
Wersja Lo-Fi | Aktualny czas: 24.04.2024 - 12:00 |