Funkcje hasMany()/belongsTo w laravel

Funkcje hasMany()/belongsTo w laravel
K9
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 3 lata
  • Postów:23
0

hej, dopiero zaczynam zabawę z tym frameworkiem, dlatego mam pytanko dla bardziej doświadczonych osób.
Czy imlementowanie tych funkcji jest konieczne, aby tworzyć powiązania miedzy tabelami? Bo, skoro np. mam tabele Users i Orders i w tabeli Orders dodam kolumnę users_id, to zawsze będę mógł zastosować funkcję DB::table('users')->join('orders', 'users.id', '=', 'orders.user_id'). A więc czy tworzenie tych funkcji jest konieczne, do poprawnego działania systemu ?

Patryk27
Moderator
  • Rejestracja:ponad 17 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
2

Nie jest konieczne, ale jest idiomatyczne (tj. specyficzne dla tego frameworka) - dzięki temu np. inni programiści są w stanie dostrzec powiązania na pierwszy rzut oka, bez konieczności analizowania migracji bazodanowych.


bearek
Poza tym jest kilka udogodnień dzięki definiowaniu tych relacji, np. jeśli Product może należeć do jednej kategorii, można pobrać tę kategorię jako po prostu $product->category. Jeśli używasz Laravela z Eloquentem, to tak - powinieneś używać tych metod.
mr_jaro
  • Rejestracja:prawie 14 lat
  • Ostatnio:ponad 3 lata
  • Lokalizacja:Grudziądz/Bydgoszcz
  • Postów:5300
1

Jak zaczniesz robić większa apkę to docenisz stosowanie relacji w ten sposób. Joinów używa się w larvie bardzo rzadko i to tylko w specyficznych miejscach gdzie nie da się inaczej zoptymalizować tego fragmentu kodu, a jakoś go trzeba ogarnąć bo jest zbyt wolny.


It's All About the Game.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.