Где вы помещаете неконтроллерные классы в codeigniter? - PullRequest
1 голос
/ 25 мая 2010

У меня есть класс Widgets. Виджеты состоят из Doohickies. Мне никогда не понадобится доступ к Doohickies напрямую через URL - по сути, это закрытый класс, используемый только виджетами. Где вы разместите свой код для определения класса Doohicky? В /app/controllers/doohicky.php? в app/controllers/widget.php? где-нибудь еще? Очевидно, что первый кажется чище, но для меня не очевидно, как сделать класс Doohicky доступным для Widget.

Ответы [ 2 ]

1 голос
/ 25 мая 2010

Похоже, ваши Widgets и Doohickies, вероятно, Модели в Архитектура MVC .

В этом случае ваши пути будут:

app/models/widget.php
app/models/doohickies.php
0 голосов
/ 31 мая 2010

Я вижу, что на вопрос уже был дан ответ, но есть несколько вещей, которые нужно перенести на него.

Вы можете поместить виджеты и doohickies в папку libraries, если они предназначены для выполнения работы, а не для предоставления службы данных.

Кроме того, взгляните на HMVC, который поддерживает идею о том, что у вас могут быть мини-приложения, которые следят за различными частями вашего веб-сайта (например, панели сообщений, окно поиска / результаты, ссылки). Это позволяет вам иметь меньшие партиалы вида, выделенные для их контроллеров виджетов; а затем главный контроллер вызывает виджеты, но не нуждается в знании того, как они возникли.

http://codeigniter.com/wiki/Modular_Extensions_-_HMVC/

...