![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Muerto |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1207 Регистрация: 23.9.2006 Репутация: 3 Всего: 4 |
Допустим есть сайт, на сайте ротатор баннеров, лента новостей, облоко тэгов и тп и тд
Ротатор и облоко тэгов и ленту новостей, нужно брать с базы, и делать какие то манипуляции над данными, будь то пагинация, рандомальность и тп. Так вот, такие вещи, для них нужно писать отдельную модель, или вообще обозвать это Widgets или Plugins? и таким вещам не место модели? Допустим есть блог, Вызывается контроллер который отвечает за главную страницу, далее наверно вызывает модель которая будет показывать посты, и пагинацию - эт работа для одного класса "модели" НО как грамотно реализовать в MVC pattern эти вот виджеты которые есть на любом сайте? Ничего не мешает сделать виджеты как и ничего не мешает вызывать несколько моделей через контроллер... Явное дело что ни в нашем шаблоне, и не в контроллере не место этим вещам. Это сообщение отредактировал(а) Muerto - 7.3.2011, 16:14 |
|||
|
||||
| SneG0K |
|
|||
|
Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: 7 Всего: 54 |
Это такие-же модули, просто отображаются в других местах.
Я такой подход использую Это сообщение отредактировал(а) SneG0K - 7.3.2011, 17:38 |
|||
|
||||
| Muerto |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1207 Регистрация: 23.9.2006 Репутация: 3 Всего: 4 |
SneG0K, Просто в контроллере вызывайте десяток модулей?
А если таки не считать это моделью, а считать это виджетом/плагином , с моей точки зрения оч стандартное решение... Ещё конечно встает вопрос, а где их вызывать... Ибо если в каждом контроллере вызывать модель новостей модель того модель сего, а виджетов ака ротаторы рекламы баннеры тэги и тп, такого счастья может быть очень много. Выходит нужно копировать тот же самый код - что мы не любим. Но можно конечно создать некую модель в которой будет набор всего того чего мы хотим... Допустим если я вывожу XML файл, то ротатор и тп мне не нужны... Можно создать плагины или вставлять функции в шаблон - тоже оч. плохо Что бы всем понятно было о чем речь, допустим хотим разработать CMS |
|||
|
||||
| SneG0K |
|
|||
|
Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: 7 Всего: 54 |
А какая разница: грузить виджет и модуль?
Вы сами себе ввели непонятные границы, по которым определяете принадлежность дополнения. У меня в есть список модулей, а так-же списки тех модулей, которые мне нужно подгрузить. Допустим я вызвал модуль news, а мне еще надо подгрузить модули currency, login, etc... В моей CMS модуль не отображает никаких шаблонов, у меня просто вызывается метод некоего класса, который возвращает определенный массив данных. А дальше есть уже поток, который разбирается, какой шаблон подгрузить (или не грузить вообще, а просто отдать json). |
|||
|
||||
| Muerto |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1207 Регистрация: 23.9.2006 Репутация: 3 Всего: 4 |
SneG0K, Разницы особой нету.
Просто хочеться грамотно работать... Я вот почитал http://zendframework.ru/anonses/model-with-mvc и задумался просто о том как это делаю я... Я не из тех кто верит что если так делают все - то оно правильно (хотя верю что контроллер должен контралировать модули и виды, но никак не исполнать роль модели)... Но когда я разрабатываю скрипт типа CMS и тп. хотелось бы таки да следовать каким то обще-принятым принципам. Даже когда работаешь не с самопальным FW, можно работать не правильно |
|||
|
||||
| SneG0K |
|
|||
|
Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: 7 Всего: 54 |
Делай так, чтобы это было удобно.
Делай свои модели проектирования, производные от MVC. |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |