pain3hp
20.12.2010, 19:23:04
Pytanie z kategorii czysto teoretycznych, czy model aplikacji MVC dopuszcza w plikach widoku jakiekolwiek operacje, warunki, wybory, pętle itp?
batman
20.12.2010, 19:50:43
Tak
modern-web
20.12.2010, 20:03:30
To chyba oczywiste... w każdym razie dla niektórych.
pain3hp
20.12.2010, 20:12:09
jak widać nie dla wszystkich a przynajmniej dla tych którzy sie dopiero dostosowuja, myślałem że od tego jest kontroler czy model a widok moze jedynie korzystać z echa, dzieki za info
Mephistofeles
20.12.2010, 20:13:12
To jakbyś wtedy rozwiązał np. warunkowe wyświetlanie czegoś?
Crozin
20.12.2010, 20:14:20
Widok jest odpowiedzialny za całą logikę widoku (ustalanie sortowania danych, ilości danych na stronę itp. itd.) oraz ich wyświetlania. Widok to normalny kod + szablony.
pain3hp
20.12.2010, 20:31:21
Cytat
To jakbyś wtedy rozwiązał np. warunkowe wyświetlanie czegoś?
funkcja w modelu zwracająca stringa którego kontroler przypisze do zmiennej a ona wyświetli się w widoku, no cóż warunek bym zrobił ale pomysłu na pętlę już nie mam
Crozin
20.12.2010, 20:37:03
1. Model zwraca surowe dane w postaci tablic/obiektów (jeżeli mowa o typach złożonych), a nie gotowy już tekst do wyświetlenia.
2. To widok pobiera dane bezpośrednio z modelu (w MVC), a nie kontroler, który później miałby je przekazywać do widoku.
CuteOne
20.12.2010, 22:51:38
Cytat
funkcja w modelu zwracająca stringa którego kontroler przypisze do zmiennej a ona wyświetli się w widoku, no cóż warunek bym zrobił ale pomysłu na pętlę już nie mam
$string = '';
$string .= '<tr><td>'.$r['id'].' bla bla bla</td></tr>';
}
//a w widoku
^-^ oczywiście nie stosuj tego
krowal
21.12.2010, 08:27:23
Tak
skowron-line
21.12.2010, 13:43:09
Cytat(Crozin @ 20.12.2010, 20:37:03 )

2. To widok pobiera dane bezpośrednio z modelu (w MVC), a nie kontroler, który później miałby je przekazywać do widoku.
Pokaż przykładowy model.
A gdzie walidacja formularzy ?
Crozin
21.12.2010, 13:52:11
Cytat
Pokaż przykładowy model.
A co tu ma być?
class MySuperFancyModelEntity {
protected
$data = array('title' => 'Hello World', 'content' => 'Lorem ipsum...');
public function getTitle() {
return $this->data['title'];
}
public function getContent() {
return $this->data['content'];
}
}
Cytat
A gdzie walidacja formularzy ?
Tam gdzie jej miejsce - w modelu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.