Должен ли я сделать это другой модуль в HMVC Codeigniter?
Я только начинаю использовать HMVC в Codeigniter. Основным модулем является новостной / блог-сайт под названием "Блог". Я хочу, чтобы пользователи могли входить в систему для комментариев, поэтому у меня есть файлы аутентификации (tank auth на самом деле). Теперь я также хочу, чтобы пользователи имели свои собственные страницы профиля, которые показывают их статистику публикации и личную информацию. Пользователи также могут иметь систему личных сообщений, где они отправляют сообщения друг другу.
Для HMVC, как я должен распределить свой код? В настоящее время я предполагаю, что хороший один будет
- 'blog' - Blog / News Display
- 'auth' - аутентификация пользователя
- 'пользователи'- Профиль пользователя + личное сообщение
И "блог", и "пользователи" будут вызывать "auth", который также отображает небольшой виджет в углу страницы, который показывает зарегистрироваться / зарегистрироваться , Если вы не вошли в систему, и Добро пожаловать Джон! Профиль / входящие / настройки , Если вы вошли в систему как Джон.
Или я должен объединить "auth" и "users" вместе или разделить "пользователей" на "профиль" и "сообщения"? Как будет выглядеть иерархия, если вы создадите структуру HMVC?
1 ответ:
Это действительно зависит, и это зависит от вас.
Если вы хотите, чтобы система комментариев когда-нибудь применилась к другим модулям, обязательно сделайте ее своим собственным модулем. Если это только связано с блогами, вы можете оставить его в модулях блогов, как собственный контроллер. Это также то, где
modules::run()
и$this->load->module()
могут пригодиться, вызывая контроллер из любого места, чтобы получить фрагменты представления, чтобы отобразить комментарии.Я бы, наверное, сделал все это своим собственным модулем.
Это довольно много невозможно быть по-настоящему 100% модульный, там будет Всегда быть определенные зависимости. Лучшее, что вы можете сделать, это попытаться организовать его таким образом, чтобы он имел смысл для вашего конкретного проекта. В общем, модуляризуйте как можно больше - если вы решите когда-нибудь избавиться от комментариев в блоге, вы можете просто удалить модуль комментариев.