[SF2][Symfony2][Symfony]symfony nadpisanie klasy wewnątrz biblioteki swoim service |
[SF2][Symfony2][Symfony]symfony nadpisanie klasy wewnątrz biblioteki swoim service |
2.07.2018, 19:54:55
Post
#1
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 24.08.2017 Ostrzeżenie: (0%) |
Jak nadpisać jakąś klasę wewnątrz biblioteki wiem, że można ją edytować ale nie o to mi chodzi. Tworzę jakąś usługę w moim bundle i po prostu nadpisuje jakąś wybraną klasę wewnątrz biblioteki np. FosUser. Chcę nadpisać vendor\friendsofsymfony\user-bundle\Form\Type\RegistrationFormType. swoją klasą , którą posiadam w swoim Bundle jako service
Ten post edytował symer 2.07.2018, 19:57:17 |
|
|
2.07.2018, 20:07:14
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Jeśli faktycznie używasz FOSUserBundle to wywal go i napisz po swojemu. Zajmie Ci to tyle samo czasu co nadpisywanie tego.
|
|
|
2.07.2018, 20:11:43
Post
#3
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 24.08.2017 Ostrzeżenie: (0%) |
To jest przykład, że Chcę nadpisać tą klasę w FosUserBundle. Pytanie dotyczy jak nadpisać jakąś klasę wewnątrz biblioteki używając własnej service
|
|
|
2.07.2018, 20:27:05
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
|
|
|
4.07.2018, 16:17:28
Post
#5
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 24.08.2017 Ostrzeżenie: (0%) |
Można to zrobić inaczej? Z tego co widzę, to tutaj mogę jedynie z jednego bundle coś podmienić, z którego dostaje getParent. A jak to zrobić jak Chcę pozmieniać w paru bundle ?
|
|
|
4.07.2018, 16:35:00
Post
#6
|
|
Grupa: Zarejestrowani Postów: 618 Pomógł: 143 Dołączył: 22.12.2010 Ostrzeżenie: (0%) |
Co do fosuser to masz w dokumentacji wszystko https://symfony.com/doc/current/bundles/FOS...ding_forms.html
|
|
|
6.07.2018, 12:05:07
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) |
Nie nadpisuje się, bo to bardzo zła praktyka.
Jeśli jakaś biblioteka nam nie pasuje to: - szukamy innej - forkujemy ją - tworzymy do niej adapter - piszemy własny kod - i/lub korzystamy z całego spektrum innych możliwości Niekiedy twórcy biblioteki przewidują taką możliwość, np: https://symfony.com/doc/current/bundles/FOS...ding_forms.html Jednak to tworzy więcej problemów, niż rozwiązuje, za kilka miesięcy nikt się nie połapie w tym. |
|
|
7.07.2018, 17:49:20
Post
#8
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 24.08.2017 Ostrzeżenie: (0%) |
Rozumiem o co Tobie biega i masz racje. No ale Ja nie Chcę jej całkowicie nadpisać. Tylko dodać możliwości . Oto mi chodzi. Bez ruszania jakichkolwiek czynności
|
|
|
7.07.2018, 22:05:44
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) |
Cytat Tylko dodać możliwości No to nie ma potrzeby nadpisywania. Tworzysz po prostu własny serwis, gdzie używasz tej biblioteki. Przykład: masz bibliotekę Guzzle do obsługi API, ale nie ma tam metody pobierającej listę pacjentów z NFZ - robisz więc serwis, który używa Guzzle do pobrania tych danych:
Można oczywiście Guzzle nadpisać, ale biblioteki, serwisy, klasy pisze się po to, aby były wyspecjalizowane - jak coś jest do wszystkiego, to jest do niczego. |
|
|
7.07.2018, 22:19:12
Post
#10
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
A możesz powiedzieć co chcesz zrobić? Bo coś mi się wydaje że próbujesz wywarzyć otwarte drzwi i próbować z komina zrobić bramę garażową dla reniferów św. Mikołaja.
|
|
|
Wersja Lo-Fi | Aktualny czas: 23.04.2024 - 07:38 |