[doctrine] czy bezpiecznie dla danych w tabelach zmieniać nazwy pól entities i doctrine:schema:update ? |
[doctrine] czy bezpiecznie dla danych w tabelach zmieniać nazwy pól entities i doctrine:schema:update ? |
28.05.2017, 15:59:10
Post
#1
|
|
Grupa: Zarejestrowani Postów: 153 Pomógł: 0 Dołączył: 20.04.2017 Skąd: Warszawa Ostrzeżenie: (0%) |
czy bezpiecznie dla danych w tabelach bazy dancyh zmieniać nazwy pól entities i doctrine:schema:update ?
|
|
|
28.05.2017, 16:43:26
Post
#2
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 42 Dołączył: 10.10.2011 Ostrzeżenie: (0%) |
Schema update jest cancerogenny, proponuję jak najszybsze przerzucenie się na migracje. Masz wtedy pełną kontrolę nad tym co się dzieje z bazą.
|
|
|
28.05.2017, 18:50:47
Post
#3
|
|
Grupa: Zarejestrowani Postów: 153 Pomógł: 0 Dołączył: 20.04.2017 Skąd: Warszawa Ostrzeżenie: (0%) |
kancerogenny?
Mam projekt pokazowy dla pracodawców z polskimi nazwami, chcę je zmienić na angielskie. Ten projekt ma tylko nie kłóć w oczy. Czy mogę zmieniać nazwy pól i zaktualizować tą komendą? Ten post edytował szczrzcz 28.05.2017, 18:51:30 |
|
|
28.05.2017, 19:31:01
Post
#4
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 42 Dołączył: 10.10.2011 Ostrzeżenie: (0%) |
Chcesz zmienić nazwy kolumn w bazie czy nazwę pola w encji? Jeżeli kolumnę to wystarczy zmienić anotację. Jeżeli nazwę pola to nie jestem w do końca pewien co się stanie gdy zmienisz każde jedno pole w encji, nie wiem czy doctrine zapamiętuje kolejność pół etc.
Kancerogenny bo nie masz kontroli nad zmianami w bazie, korzystając z migracji możesz cofnąć się do konkretnej wersji plus widzisz wszystkie zmiany w postaci zapytań SQL. Dodatkowo rada, używaj angielskich nazw metod, pól klas etc. i nie korzysta ze słów kluczowych we własnych nazwach. |
|
|
28.05.2017, 20:35:20
Post
#5
|
|
Grupa: Zarejestrowani Postów: 153 Pomógł: 0 Dołączył: 20.04.2017 Skąd: Warszawa Ostrzeżenie: (0%) |
chcę zmienić pola entities, ale też nazwy w adnotacjach
i zaktualizować nazwy tabel i kolumn bazy danych przez doctrine:schema:update bo ten projekt gdzieś tam sobie wisi na hostingu by sobie poklikać. Zaryzykuję, i tak to nie są superważne dane, po prostu chciałbym mieć jak najmniej roboty. W ogóle czeka mnie dużo roboty z tą zmianą nazw, wątpię że to tak ładnie pójdzie, mam zamiar to robić CTRL+R, ciekaw jestem czy jest jakiś sprytniejszy sposób. Ten post edytował szczrzcz 28.05.2017, 20:36:58 |
|
|
29.05.2017, 09:11:14
Post
#6
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 42 Dołączył: 10.10.2011 Ostrzeżenie: (0%) |
Jeżeli zmienisz tylko name w anotacji to Doctrine sobie poradzi na 100%. W PHP Storm masz refaktoryzację, zmieniasz nazwę zmiennej a Storm szuka wszystkich referencji. Ogólnie działa ale warto przejrzeć przed wciśnięciem "refactor".
Ten post edytował Puszy 29.05.2017, 09:16:33 |
|
|
31.05.2017, 14:43:02
Post
#7
|
|
Grupa: Zarejestrowani Postów: 153 Pomógł: 0 Dołączył: 20.04.2017 Skąd: Warszawa Ostrzeżenie: (0%) |
ok, 2 dni zmieniania nazw PL-ENG.
ale gdy teraz zamiast:
mam :
to komenda doctrine:schema:update --dump-sql chce mi tworzyć nowe puste tabele, zamiast aktualizować stare nazwy. Czy źle rozumiem?
|
|
|
31.05.2017, 14:55:05
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 468 Pomógł: 6300 Dołączył: 27.12.2004 |
Zmieniles nazwe klasy wiec dla doctrine jest to nowa encja. Jak chcesz zmienic tylko nazwe tabel to musisz nazwe klasy pozostawic a jedyne co zmienic to
* @ORM\Table(name="pracownik", indexes={@ORM\Index(name="idLogin_idx", columns={"idLogin"})}) na * @ORM\Table(name="employee", indexes={@ORM\Index(name="idLogin_idx", columns={"idLogin"})}) Oczywiscie jesli zmienisz tylko to, to bedziesz mial sieczke w php w postaci polskich nazw klas. Albo wiec zostaw, albo zmien klasy i pogodz sie z nowymi tabelami Masz teraz potwierdzenie tego co powiedzial Puszy Cytat Schema update jest cancerogenny, proponuję jak najszybsze przerzucenie się na migracje. Masz wtedy pełną kontrolę nad tym co się dzieje z bazą.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
Wersja Lo-Fi | Aktualny czas: 28.05.2024 - 23:35 |