Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]MVC, jak umieścić formularz
wpaski
post 2.09.2013, 23:34:02
Post #1





Grupa: Zarejestrowani
Postów: 206
Pomógł: 6
Dołączył: 25.12.2011

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


Witam, zastanwiam się jak rozplanować kwestię formularza mianowicie chodzi mi o to że jest jakaś klasa formularza, i teraz gdzie mam umieścić np taki kod:
  1. $form = new Form();
  2. $form ->post('name')
  3. ->val('minlength', 2)
  4.  
  5. ->post('age')
  6. ->val('minlength', 2)
  7. ->val('digit')
  8. ->post('gender');
  9. $form ->submit();


Czy może on być w kontrolerze, czy jednak w modelu? model odpowiada za pobieranie danych z np. bazy,a tutaj pobieramy dane od użytkownika jednak czy można wywoływać tak jak powyżej formularz(obiekt) w modelu? jeśli nie tam no to gdzie? mógłby mi ktoś rozjaśnić nieco sprawę?
Go to the top of the page
+Quote Post
Posio
post 3.09.2013, 07:32:07
Post #2





Grupa: Zarejestrowani
Postów: 417
Pomógł: 44
Dołączył: 23.06.2011

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


kontroler, i tak musisz to puścić do widoku.
Go to the top of the page
+Quote Post
Crozin
post 3.09.2013, 09:36:47
Post #3





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


1. Model to nie tylko pobieranie danych z bazy danych.
2. Formularz (w kontekście jaki pokazałeś w pierwszym poście) ma za zadanie jedynie przekształcenie jednych danych (parametrów przesłanych żądaniem HTTP) w inne (obiekt(y)) oraz ewentualnie sprawdzić poprawność tych danych.
3. W MVC (czy innych jego wariantach) nie wszystko musi znajdować się w którejś z warstw. Jednak definicja formularza, ktrórą podałeś wymaga znajomości modelu danych stąd kod ten zaliczać się będzie do modelu i nie powinien znajdować się w kontrolerze.
Go to the top of the page
+Quote Post
thek
post 3.09.2013, 10:04:35
Post #4





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Jak już wspomniał Crozin, model to nie tylko pobieranie czy zwracanie danych ze źródła jakiegoś (w końcu nie tylko baza jest nim). Model odpowiada także choćby za obróbkę danych. czy ich przekształcanie. Stąd choćby w Symfony i innych frameworkach klasy repozytoriów powiązane są z klasami encji i tym samym z warstwą modelu. Choć faktycznie granica w części przypadków jest płynna i w niektórych przypadkach (przykładowo microframeworkach) granica ta się lekko zaciera na rzecz zwięzłości (definicja routes wprost w głównym pliku aplikacji - zaznaczam, że pomijam tu ControllerProvidery dla uproszczenia).


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2024 - 19:49