Dziedziczenie migracji w Laravel

Odpowiedz Nowy wątek
2019-02-11 19:26

Rejestracja: 1 rok temu

Ostatnio: 1 rok temu

0

Czy możliwe jest zrobienie czegoś takiego w migracjach w Laravel:

mam klasę migracji class CreateUsersTable extends Migration{}.
I teraz chciałbym zrobić nową migrację, która zawierałaby elementy z CreateUsersTable.
Czy można zrobić to tak: class NowaUsersTable extend CreateUsersTable{}?

Analogicznie, czy można zrobić podobne dziedziczenie w modelu?

Pozostało 580 znaków

2019-02-11 19:58
Moderator

Rejestracja: 13 lat temu

Ostatnio: 4 godziny temu

Lokalizacja: Wrocław

1
  1. Dlaczego chciałbyś dziedziczyć migracje?
  2. Możesz dziedziczyć modele, lecz Laravel ich w żaden specjalny sposób nie będzie obsługiwał (w porównaniu do np. Doctrine'a, gdzie masz różne bajeranckie sposoby dziedziczenia: https://www.doctrine-project.[...]ence/inheritance-mapping.html). Tzn. powinno wszystko działać, ale będzie średnio wygodne w użyciu. IMO najlepiej celować w kompozycję.

edytowany 3x, ostatnio: Patryk27, 2019-02-11 20:00

Pozostało 580 znaków

2019-02-11 20:08

Rejestracja: 1 rok temu

Ostatnio: 1 rok temu

0

Tzn. nie jestem pewny czy tak się powinno robić.

Załóżmy, że mam kilka nazwisk: Uczeń 1, Uczeń 2, Uczeń 3.
I chcę, by każdy miał osobną tabelę. I dla przykładu tabela dla Uczeń 1 jest taka: imie, nazwisko, wiek, adres.
I teraz pytanie czy dobrze myślę.
Każda tabela powinna mieć osobną migrację, czy można jakoś ustawić, by jedna migracja tworzyła różne tabele?
Jeżeli każda migracja ma być osobno, to czy mozna utworzyć jakąś migrację główną np. Uczeń i żeby pozostale dziedziczyły pola do wypełnienia, czy po prostu każdą migrację zrobić, że dziedziczy tylko normalnie po Migration i reszte na zasadzie kopiuj wklej wypełnić?

Pozostało 580 znaków

2019-02-11 21:01

Rejestracja: 9 lat temu

Ostatnio: 1 minuta temu

Lokalizacja: Grudziądz/Bydgoszcz

1

migracja z samego przeznaczenia i tego jak ma działać nie powinna nigdy być dziedziczona, jeśli chcesz coś dziedziczyć to znaczy, ze źle się do bazy zabierasz, o czym zresztą świadczą twoje następne wypowiedzi w postaci tabel uczen1, uczen2 gdzie powinna być jedna tabela zawierająca odpowiednią kolumne pozwalająca identyfikować ucznia a nie kolejna tabela.


It's All About the Game.
edytowany 1x, ostatnio: mr_jaro, 2019-02-11 21:01

Pozostało 580 znaków

2019-02-11 21:10

Rejestracja: 1 rok temu

Ostatnio: 1 rok temu

0

Trochę źle to opisałem o co mi chodzi, ale dzięki za odpowiedzi, bo w sumie naprowadziliście mnie na rozwiązanie problemu.
Można zamknąć.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0