Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Laravel] - jeden kontroler na jeden obiekt?
bialko0019
post
Post #1





Grupa: Zarejestrowani
Postów: 294
Pomógł: 4
Dołączył: 19.12.2008

Ostrzeżenie: (0%)
-----


Hej.

Mam pytanie odnośnie podejścia pro do tematu. Załóżmy, że mamy w panelu admina 3 zakładki. Spotkania, Telefony oraz mój dashboard. W dashboardzie chcę wyświetlić dzisiejsze spotkania i telefony, w Telefony lista zaplanowanych telefonów, w Spotkania analogicznie - lista wszystkich moich spotkań. I teraz.

Czy do tego zrobić 3 kontrolery, w którym każdy będzie odpowiadał za swoje, czyli kontroller do dashboardu, kontroller do listingu spotkań i kontroller do telefonów, i do tego każdy ma mieć swoją klasę?

Czy może dwa kontrollery, jeden za dashboard, a drugi dać jako Activity (activity to rekordy zaplanowanych spotań i tel, gdzie jest koluman type warunkująca czy to tel, czy spotkanie).

Czy może jeszcze inna droga i jeden kontroller i jeden model - tylko wtedy w akcjach index(), store() itd kontrollera muszę dawać jakieś switch case żeby operować na danych i wyświetlać albo dashboard, albo spotkania albo telefony,

Które rozwiązanie lepsze - a może jeszcze inaczej? Wolałbym dać tel i spotkania jako jedna klasa, bo to są prawie identyczne kolumny w bazie (tylko spotkanie ma jedną kolumnę więcej). Pytam się, ponieważ tych opcji będzie z 15 więc wolałbym dobrze podejść do tematu.

Z góry dzięki za info :-)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
markonix
post
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Liczbę modeli determinuje liczba tabeli. Jeżeli spotkania i telefony to jedna tabela tylko z różną kolumną (type) to masz jeden model. Tu nie ma co zbytnio kombinować.
Liczba kontrolerów, nie wpłynie to mocno na jakość kodu. Warto się trzymać jakiegoś standardu wszędzie i tyle.
1 kontroler na jeden zasób - np. /articles (i w nim wszystko co z artykułem, wszystkie CRUD metody i pozostałe).
W Twoim przypadku skoro to jeden zasób to jak dla mnie Controller:

activities/index albo /home - dashboard
activities/meeting - spotkania
activities/calls- telefony

Czyli jeden kontroler, 3 metody.

Ten post edytował markonix 26.11.2017, 17:59:31
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 19:04