Правильное использование контроллеров с MVC (CakePHP) - PullRequest
2 голосов
/ 30 августа 2011

Документация Cake гласит: «Чаще всего контроллеры используются для управления логикой для одной модели». Я обнаружил, что это un , общий для большей части моего кода, и я не хочу нарушать соглашение, если это не уместно.

Например, мое приложение отправляет пользователя на панель его учетной записи после входа в систему - при этом используются данные, вероятно, из полдюжины таблиц, не все из которых связаны между собой. Создать ли для этого контроллер «приборной панели» (даже если нет модели или таблицы приборной панели)? Или мне создать метод панели мониторинга в существующем контроллере?

Спасибо, Брайан

1 Ответ

1 голос
/ 30 августа 2011

У меня похожая ситуация, и я справляюсь с ней, сохраняя действия, которые соединяют множество моделей в контроллере, который является наиболее центрированным. Например, мой пользователь может создавать голосовые комментарии, комментарии, настройки, информацию в Twitter и Facebook. Всю эту информацию я могу получить, например, от моей пользовательской модели $this->User->Voicenotes->find('all').

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

Полагаю, это зависит от того, как вы хотите, чтобы ваше собственное приложение работало, и что будет легче в вашей ситуации.

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