|
|
|
| Всем привет, помогите или подскажите как правильно нужно создать шаблон сайта при использовании MVC.
сейчас представлю структуру как я ее понимаю:
корневая папка:
- файл index.php
- файл config.php
- папка templ
- файл ./templ/tmpl.php (сам шаблон)
- папка modul
- папка poisk
- файл ./modul/poisk/controller.php
- файл ./modul/poisk/model.php
- файл ./modul/poisk/view.php
- папка pogoda
- файл ./modul/pogoda/controller.php
- файл ./modul/pogoda/model.php
- файл ./modul/pogoda/view.php
|
И таким образом можно писать много модулей и добавлять и на страницу в нужное нам место.
Как пример давайте рассмотрим файл шаблона, он имеет вид:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Документ без названия</title>
</head>
<body>
<table width="980" border="1" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>ТУТ НУЖНО ВЫВЕСТИ ПОИСК</td>
<td>ТУТ НУЖНО ВЫВЕСТИ ПОГОДУ</td>
</tr>
</table>
</body>
</html>
|
Я пока не понимаю как вызовом файла, либо переменной можно получить нужный данные из модуля в нужном нам месте на сайте.
Заранее спасибо, надеюсь моя мысль понятно изложена. | |
|
|
|
|
|
|
|
для: mister_pipin
(11.03.2012 в 22:40)
| | Следует четко понимать, что вот это тоже вид (view)
- папка templ
- файл ./templ/tmpl.php (сам шаблон)
| а база данных - это тоже модель.
Шаблон вы должны скормить вид (view), который и выдаст вам преобразованный HTML-код, при этом обратиться к контроллеру, а тот к модели. | |
|
|
|
|
|
|
|
для: cheops
(13.03.2012 в 17:31)
| | Если правильно понимаю то принцип действия следующий.
При загрузке страницы мы подключаем контролер, модель и вид до любого вывода информации на сайте.
Срабатывает контроллер - взаимодействует с моделью, модель возвращает данные контроллеру. Контроллер отдает данные для вывода виду.
Получается что вид уже заполнен нужной нам информацией. Теперь что бы эта информация отобразилась нужно именно этот файл(к примеру с помощью include) подключить к шаблону?.
В данном примере создается 2 класса, контроллер и модель. В виде только разметка хтмл, яваскрипт, цсс и нужные нам переменные которые мы взяли из контроллера.
Или лучше для вида также создать класс? | |
|
|
|
|
|
|
|
для: mister_pipin
(21.03.2012 в 02:40)
| | Если не сложно, посмотрите тему по ссылке http://softtime.ru/forum/read.php?id_forum=1&id_theme=85732. Да, MVC не паттерн для Web, его сюда принесли из десктопной среды, где модель - это структура файла, реже базы данных, контроллер - это вычисления программой, а вид - это отображение на мониторе или принтере. Там это модель очень популярна, так как вычислений много. В Web она не всегда оправдана, у вас контроллер должен оставаться пустым большую часть времени, а задачи "вида" лучше перенести в класс вида. И вообще лучше использовать приемы, которые будут облегчать вам создание архитектуры, а не запутывать еще больше. Можно, конечно, методом грубой силы затолкать любую задачу в любой паттерн... вопрос только, что вы приобретаете в замен, какую выгоду? | |
|
|
|
|
|
|
|
для: cheops
(21.03.2012 в 13:41)
| | Вот как пример, давайте рассмотрим портал, в котором на главной странице находится превью всего что есть на сайте(погода, валюта, афиша и тд).
Было бы ведь целесообразно использовать mvc. К примеру у нас будет папка "модули" в которой будут храниться все модули используемые на сайте. Если это погода, в папке "модули" будет находится еще одна папка с название данного модуля(пусть это будет погода), в котором будет контроллер, модель и вид.
Если же на сайте таких модулей много, возможно проектирование сразу нескольким программистам не мешая друг другу. А это есть хороший плюс как я понимаю.
С данного примера стоит ли использовать mvc? Как вы считаете? | |
|
|
|
|
|
|
|
для: mister_pipin
(27.03.2012 в 02:44)
| | Это можно делать и без MVC и с MVC. Да вы просто возьмите и попробуйте, тогда сами увидите сильные и слабые стороны. | |
|
|
|
|
|
|
|
для: mister_pipin
(21.03.2012 в 02:40)
| | и чего вы упёрлись в эту хрень она вроде бы и логична...но формирует ужасные виды ссылок...даже с помощью .htaccess не преобразуете под ЧПУ... | |
|
|
|
|
|
|
|
для: SerG7
(22.03.2012 в 01:36)
| | Я что то думал что возможно использовать ЧПУ. Где то даже видел готовый скрипт | |
|
|
|