Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

MVC Framework & style/script adding problems

1.8K
23 августа 2010 года
Kama
153 / / 04.05.2006
Всем привет.Пишу свой фрейм. Пишу сказать чесно первый раз сам один, пишу гибрит joomla и Zend. Фреймворк поддерживает модель MVC. Сегодня с толкнулся вот с чем: Нужно добавлять скрипты и стили от модулей в темплайт. Дело в том что я реализовал так что темплайт у меня вызывается первым и по ходу прохоздения(считывания сверху вниз) темплайт добавляет компоненты и модули которые могут содержать стили и скрипты. Помню, работая в joomle я вызывал функции addScript() и addStyle(). ХОтелось бы и реализовать их и здесь. Подсказите кто знает, спасибо.
563
24 августа 2010 года
MrLinker
249 / / 17.09.2006
Цитата:
темплайт у меня вызывается первым


Цитата:
темплайт добавляет компоненты и модули


Это MVC?

Обычно, по крайней мере, как у меня, сначала формируется массив данных, которые потом передаются в представление. При таком подходе, приведенной вами проблемы возникнуть не должно.

Правильно я понимаю, что у вас темплейт отрабатывает без буферизации?
Если нет, то опять же, проблем реализовать это не вижу.

1.8K
30 августа 2010 года
Kama
153 / / 04.05.2006
Реализация MVC ведь не зависит от того что формируется первым(темплейт -> контроллер или контроллер->темплейт), Да сперва у меня было так как написано ранее но потом по совету друга я переделал и сеичас у меня контроллер вызывается первым. До буферизации чесно сказать не дошел пока...Но проблемма все же таки осталась... Не могли бы вы привести пример?
563
30 августа 2010 года
MrLinker
249 / / 17.09.2006
По идее, контроллер призван принять запрос, отработать его, далее, в соответствии c запросом, передавать данные в модель, данные от модели передавать в шаблон.
В общем, спорить не буду, это ваше дело, как организовать framework.

По вашей проблеме.
Предположим, что у вас темплейт вызывается первым.
Тогда, если включить буферизацию вывода, то весь шаблон отработает и может быть считан в переменную. Если мы изначально в шаблоне сделаем несколько служебных меток, например {{JSTAGS}} и {{CSSLINKS}}, то после выполнения темплейта заменяем эти метки на теги подключения соответствующих ресурсов.

Осталось написать функции addcss($file) и addjs($file), что не представляет проблемы.

Про буферизацию: http://www.phpclub.net/manrus/f/ob-start.html

P.S. А если у вас первым вызывается контроллер, то подобной проблемы не может быть в принципе.
1.8K
07 сентября 2010 года
Kama
153 / / 04.05.2006
спасибо MrLinker за помошь, очень ценю.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог