Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> model MVC, kilka prostych?pewnie dla co niektórych
AcidBurnt
post
Post #1





Grupa: Zarejestrowani
Postów: 215
Pomógł: 1
Dołączył: 13.04.2003
Skąd: z ławki przed blokiem

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


Witam!!

Zabieram się właśnie za napisanie CMS'a na pewna stonkę WWW, i ponieważ jest to któryś z kolei bardzo podobnego typu mój projekt, zacząłem się zastanawiać nad jakimś rozwiązaniem, które będę mógł później wykorzystać w następnych projektach, w ręce wpadł mi gdzieś przelotem jakiś numer „php solutions” był tam artykuł właśnie p frameworku opartego na modelu MVC, niestety nie miałem czasu zaznajomić się z tym artykułem dokładnie może też dla tego mam kilka problemów.

Całość "systemu" ma być rozdzielona miedzy warstwy:
  • widok
  • model
  • kontroler
rozumiem ze klasa widok, no to, jeśli dobrze rozumiem no to, co "wypluwa" nam przeglądarka lub też cokolwiek innego PDF, czyli to, co widzimy już po wygenerowaniu www. Czyli konkretnie w moim projekcie były by jakieś szablony temlates, wiec przerobienia zebranych danych na gotowa stronę www, tak?

warstwa modelu, tutaj ma być pobranie danych, czyli zainicjowanie powiedzmy połączenia z baza danych wybranie powiedzmy nowości, i zapisanie ich do jakieś tablicy, aby później przekazać to do warstwy widoku, która nam to wyświetli, tak?

warstwa modelu… no i tutaj to już nie rozumiem….

może ktoś mnie naprostować w moim rozumowaniu?
Go to the top of the page
+Quote Post
NuLL
post
Post #2





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


A czytałeś http://php.pl/artykuly/aplikacje_interneto...wadzenie_do_mvc questionmark.gif


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
bela
post
Post #3


Administrator PHPedia.pl


Grupa: Developerzy
Postów: 1 102
Pomógł: 2
Dołączył: 14.09.2003

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


Ja osobiście robię to w taki sposób.
  • Inicjuje kontroler podając mu plik konfiguracyjny
  • Kontroler na podstawie URLa wykonuję akcje
  • Akcja jest najmniejszą jednostką, odwołuje się do modelu
  • Model to takie API na dane, w praktyce na bazę danych
  • Akcje wypluwają co muszę i to trafia z powrotem do kontrolera, który wybiera widok w jakim mają zostać wyświetlone dane
  • Widok robi 'print' ;]
Tak to mniej więcej wygląda :]


--------------------
Go to the top of the page
+Quote Post
AcidBurnt
post
Post #4





Grupa: Zarejestrowani
Postów: 215
Pomógł: 1
Dołączył: 13.04.2003
Skąd: z ławki przed blokiem

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


Cytat(NuLL @ 2005-06-12 20:59:49)

nie, umknoł mi ten art...

więc po przeczytaniu Arta z php wiem chyba więcej proszę mnie poprawić jeśli się mylę,przedstawię całość na prostym przykładzie.

prosta strona zajmująca się wyświetlaniem i dodawaniem nowości.

więc tak user wydaję żądanie wyświetlenia nowości poprzez http://www.moja-domena.pl/index.php/nowosci

w pliku index.php analizuje żądanie:

  1. <?php
  2. $modules = explode( '/', substr( $_SERVER['PATH_INFO'], 1) );
  3. ?>


i tutaj urchamia się sterownik, który poprzez analize zawartości tablicy $modules stwierdza ze chce wyświetlic nowosci, więc uruchamiam wodok dla nowosci

./viev/nowosci.php

ten zatem uruchamia model

./viev/model.php

model uruchamia klase odpowiedzialna za połaczenie z baza danych, pobiera nowosci i zapisuje je do powiedzmy tablicy $nowosci
i tutaj konczy swoje zadanie, tak?

teraz widok

./viev/nowosci.php ma tablice $nowosci z wszystkimi nowosciami, i on uruchamia szablon który generuje gotowy kod strony.

dobrze rozumiem snitch.gif

tylko nie wiem gdzie tutaj zgubiłem akcjie smile.gif

no albo przykład z dodaniem usera

żądanie http://www.moja-domena.pl/nowosci/dodaj

sterownik stwierdza ze uzytkownik chce dodac usera więc co.. uruchamia akcje

./actions/dodajusera.php

no i co ta akcja uruchamia vidok dla dodawania usera, czyli jakis tam formulaz... tworzy sie nam www, wypelnamy formulaz, przesylamy dane poprzez POST spowrotem na http://www.moja-domena.pl/nowosci/dodaj

sterownik stwierdza ze ma juz dane do dodania usera, wiec uruchamia akcje

./action/dodajusera.php

i tutaj co? wywolanie widoku dla dodawania usera, pozniej wywolanie modelu i dodawanie z modelu? czy dodawanie przebiega teraz z poziomu akcji która łaczy sie z baza i dodaje.
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 Aktualny czas: 22.08.2025 - 08:02