Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> MVC, a co z całą resztą?
Asmox
post
Post #1





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

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


MVC jest oczywiście jest wzorcem na ściąganie danych i obróbkę i wyświetlenie. Ale co z całą resztą? Można napisać klasy do tylko potrzebnych rzeczy, ale gdzie je poumieszczać i gdzie dawać ich wywołania?
Powiedzmy, że mam taki układ folderów:
Kod
application
|- models
|- views
|- controller

I napisałem sobie klasę powiedzmy do obsługi sesji. Gdzie ją umieścić i gdzie wstawiać kod operujący na tej klasie? Mam na myśli bardziej ogólne rozwiązanie, bo nie wiem co robić z różnymi dodatkowymi klasami, które nie mają nic wspólnego z MVC, ale są mi równie potrzebne
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kuziu
post
Post #2





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

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


Podczepię się pod temat (IMG:style_emoticons/default/smile.gif)

thek napisałeś:
Cytat
Model - operuje na danych, różnych jego formach, manipuluje nimi.
View - służy do prezentacji danych.
Controller - steruje przepływem informacji i procesami aplikacji.


Ok, dajmy na to mamy edycję posta na forum.
Zadania jakie mamy do wykonania to:
1. Odebranie zapytania http
2. Pobranie posta
3. Sprawdzenie czy on istnieje
4. Wpisanie nowej treści
5. Zapis
6. Wyświetlenie

I teraz moje pytanie kto ma za co odpowiadać:
1. Controller
2. Controller za pomocą Modelu
3. Controller za pomocą Modelu
4. Controller za pomocą Modelu
5. Controller za pomocą Modelu
6. Controller za pomocą Widoku

Czy dobrze rozumuję? Jeśli tak to czy taki kod z użyciem propela byłby poprawny?

Kod w kontrolerze:
  1. protected function editPost()
  2. {
  3. $post = PostQuery::create()->findOneById($_POST['postId']);
  4. if($post)
  5. {
  6. $post->setText($_POST['text']);
  7. $post->save();
  8.  
  9. // Tutaj wyswietlenie posta lub przekierowanie na topic w ktorym byl zawarty
  10. }else{
  11. //Blad
  12. }


O co mi chodzi... Wszystko co piszę, piszę praktycznie tylko i wyłącznie w Kontrolerze (oczywiście poza widokiem), a Modelu praktycznie nie dotykam. Wywołuję tylko jego metody których dostarcza mi Propel. Czy to poprawne podejście? Czy np. sprawdzenie czy post istnieje i wpisanie treści do niego nie powinno odbyć się w modelu ?

Z góry dzięki za jakiekolwiek rady.
Go to the top of the page
+Quote Post

Posty w temacie
- Asmox   MVC, a co z całą resztą?   14.12.2010, 16:47:35
- - skowron-line   Układ katalogów to akurat najmniej istotna sprawa....   14.12.2010, 17:06:12
- - Crozin   Tak się składa, że akurat tzw. "sesja" t...   14.12.2010, 17:23:06
- - Asmox   No dobra, to inny przykład: filtr danych, który za...   14.12.2010, 18:13:22
- - Crozin   Dobra to inaczej:CytatMVC jest oczywiście jest wzo...   14.12.2010, 19:00:41
- - Zyx   Asmox -> to też jest model korzystający z usług...   14.12.2010, 22:31:22
- - thek   Asmox... Najprościej i najogólniej rzecz ujmując m...   15.12.2010, 00:23:55
- - Kuziu   Podczepię się pod temat thek napisałeś: CytatMod...   16.12.2010, 01:11:29
- - Crozin   1. Nie, MVC akurat w ogóle nie określa jak ma zost...   16.12.2010, 02:35:51
- - Kuziu   Czyli powinienem mieć np. klasę modelu obsługującą...   16.12.2010, 09:58:40
- - Zyx   Podstawowe kryterium brzmi: czy Twoja architektura...   16.12.2010, 10:15:08
- - Kuziu   Nie ograniczam się tylko do ORM chociaż szczerze m...   16.12.2010, 11:38:04
- - Crozin   1. Model nigdy, ale to absolutnie nigdy nie powini...   16.12.2010, 13:19:44
- - Zyx   Najprostszy możliwy przykład: masz sobie widok do ...   16.12.2010, 15:45:24
- - thek   W przypadku edycji posta i MVC część wyjaśnił Ci j...   16.12.2010, 15:58:13
- - Crozin   @thek: Ad. 1) Chyba na odwrót? Bo jak model miałb...   16.12.2010, 16:25:28
- - zzeus   No to ja też mam małe pytanko w temacie, gdzie np....   17.12.2010, 09:56:07
- - marcio   Cytat(zzeus @ 17.12.2010, 09:56:07 ) ...   17.12.2010, 11:01:37
- - thek   ad1) i tutaj właśnie dotykamy tego czym jest fakty...   17.12.2010, 11:20:24
|- - mike   Cytat(thek @ 17.12.2010, 11:20:24 ) T...   17.12.2010, 11:49:29
- - Crozin   1) Pytałem w kontekście aplikacji webowej, gdzie j...   17.12.2010, 11:48:05
- - Zyx   Widok to też nie szablon. Klasyczny przykład: gdzi...   17.12.2010, 12:00:49
- - marcio   CytatSprawdzanie poprawności danych zasadniczo tak...   17.12.2010, 12:25:05
- - Crozin   CytatW takim razie wykluczamy kontroler praktyczni...   17.12.2010, 12:29:45
- - marcio   CytatModel jest najbardziej rozbudowaną warstwą ap...   17.12.2010, 12:38:49
- - Crozin   W MVP nadal będziesz miał model-kobyłę. Aż tak wie...   17.12.2010, 12:48:39
- - thek   Mike, Zyx: Wiem, ale to, że Widok nie ma możliwośc...   17.12.2010, 12:57:37


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: 3.10.2025 - 07:35