Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 3 Dołączył: 8.06.2009 Skąd: Kraków Ostrzeżenie: (0%)
|
wybaczcie, mam już wyrzuty sumienia - 3 post z kolei mojego autorstwa ale chyba tylko tutaj można spotkać ludzi którzy wiedzą o czym piszą (IMG:style_emoticons/default/Lkingsmiley.png)
Tym razem chodzi o model, kurcze jaką on pełni rolę ? W katalogu models tworze sobie klase które jest rozszerzeniem klasy Eloquent która to zawiera pewne podstawowe metody/zapytania. Tylko że w większości przykładów ludzie w tej klasie definiują jedynię nazwę tabeli a zapytanie piszą w kontrolerze na zasadzie zamiast
Załóżmy że mam 2 formularze, jeden służy do CRUD użytkowników a drugi CRUD userów do tej pory w CI robiłem sobie jeden model np. base_model gdzie miałem 4 funkcje każda z nich przyjmowała 2 parametry nazwę tabeli na której ma działać i opcjonalny parametr z danymi, dzięki temu w kontrolerze mogłem sobie wywołać po prostu metodę
Jak coś takiego powinno się robić w laravelu ? przeglądam już chyba 3 przykład gdzie autor po prostu zapytania SQL pisze w kontrolerze a sam plik w katalogu models tworzy jedynie po to by podać nazwę tabeli... |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 3 Dołączył: 8.06.2009 Skąd: Kraków Ostrzeżenie: (0%)
|
^^ o widzisz trochę mi rozjaśniłeś sytuację czyli:
wykorzystując klase DB::metoda_statyczna zapytania piszemy w kontrolerze i w ogóle nie korzystamy z modelu wykorzystując dziedziczenie z Eloquent zapytania piszemy w kontrolerze natomiast pola,zmienne oraz metody które je definiują przechowujemy w plikach w modelu czy w klasie DB:: mogę zdefiniować swoje własne zapytanie sql ? nie korzystając z metod insert select update itp. coś w rodzaju DB::SQL('moje zapytanie') <- w dokumentacji czegoś takiego nie widziałem ;( Rozumiem że w laravelu nie ma podobnego mechanizmu co w Codeigniterze ? tzn. jeden standardowy model (który sam sobie definiuje) i który może mi obsłużyć kilka tabel? Swoją drogą, tak się zastanawiam widząc taki kod:
który daje nam takie zapytanie sql:
czy to czasami nie jest sztuka dla sztuki ? przecież szybciej i dla mnie czytelniej jest napisać czysty kod SQL (który przecież trudny nie jest i stosunkowo przejrzysty) niż definiować wbudowane metody z parametrami... Ten post edytował marcus753 5.07.2014, 16:25:04 |
|
|
|
marcus753 [laravel]model 5.07.2014, 15:33:53
Pyton_000 Model jest po to aby móc dla konkretnej tabeli zde... 5.07.2014, 15:46:33
marcus753 ^^ czyli rozumiem że w modelu nie używamy kodu sql... 5.07.2014, 15:53:56
memory Jeżeli dziedziczysz Eloquent to używasz ORM http:/... 5.07.2014, 15:55:59
memory Tak, jest prościej ale załóżmy, że musisz wypisać ... 5.07.2014, 16:45:40
marcus753 tylko że jak rozumiem takie zapytanie wykonuje nie... 5.07.2014, 17:00:05
memory W modelu do tego służy. Musisz nauczyć się obsługi... 5.07.2014, 17:36:06
marcus753 auć no to to jest wada i to dosyć duża, czyli jak ... 5.07.2014, 18:07:59
pitu Jeżeli nie chcesz używać ORM to twój model nie dzi... 5.07.2014, 19:55:29 ![]() ![]() |
|
Aktualny czas: 29.12.2025 - 23:38 |