Как модулировать CodeIgniter? - PullRequest
0 голосов
/ 20 мая 2011

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

Моя идея состоит в том, чтобы иметь контроллер длякаждое состояние любой части сайта (например, правая колонка, в которой будет 3 состояния: новые сообщения, связанные сообщения и поисковые фильтры).Я также хотел бы, чтобы в области содержимого было много разных состояний (например, результаты поиска, просмотр сообщений, новые сообщения и т. Д.).

Проблема в том, что я не могу найти способ взять несколько выходов контроллера искомпилируйте его в один шаблон (обратите внимание, я сказал, что контроллеры, а не представления).

Я видел расширение HMVC, но это далеко от моего первого сайта, и я надеюсь на более упрощенное решение (если только вы не докажете, что я неправ, и покажете, что HMVC проще, чем я видел).

Ответы [ 2 ]

1 голос
/ 23 мая 2011

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

Обычно люди, которым нужен тип функциональности, который вы описываете при работе с CodeIgniter, заканчивают тем, что используют шаблонбиблиотека.Существует несколько библиотек шаблонов с открытым исходным кодом для CodeIgniter, которые можно легко найти с помощью поиска Google по «библиотеке шаблонов codeigniter».

Я никогда не использовал ни одну из них, поэтому не буду рекомендовать какую-либо конкретную библиотеку.Однако приложение, над которым я работаю, позаимствовало некоторые идеи из библиотеки шаблонов Фила Стерджона .Возможно, вы не найдете точного соответствия тем функциям, которые вам нужны, но, по крайней мере, вы сможете черпать вдохновение из решений, предложенных другими.

1 голос
/ 20 мая 2011

Это кажется мне немного странным в модели MVC.

Если для правой панели вы используете одно представление с отслеживанием состояния, которое может изменять состояние в зависимости от ввода (т. Е. На какой странице находится пользователь в данный момент), я бы добавил модель для панели. Действие контроллера будет отвечать за установку правильного состояния модели (т. Е. «Вы находитесь в состоянии домашней страницы»). Модель может отвечать за представление правой панели, какие дочерние представления загружать.

Вот так я бы, наверное, все-таки реализовал что-то подобное. HMVC кажется излишним, и в этом примере он не будет использоваться по назначению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...