Cakephp Запрос данных от другого контроллера - PullRequest
0 голосов
/ 20 мая 2010

Возможно ли запросить данные с другого контроллера в cakePHP?

Например, я создал 2 папки на страницах, которые называются поиск и обновление (оба с index.ctp) и контроллер и модель в правильных папках.

Обе страницы используют разные источники БД, и я хочу отобразить некоторые данные из контроллера поиска в виде страницы обновления.

Это возможно?

С уважением, Свен

1 Ответ

0 голосов
/ 20 мая 2010

Это может помочь вам сделать резервную копию секунды на принципах MVC / CakePHP.

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

Если у вас есть какие-то действия с данными, которые происходят в другом контроллере, я рекомендую перенести эти методы в соответствующую модель данных. Это лучше подходит для модели разделения проблем в Cake. Кроме того, однако, вы можете добавить дополнительную модель к переменной $ users во втором контроллере, которая позволит вам получить доступ ко всем методам в ней.

Одно замечание по поводу использования $: обязательно включите как внешнюю (другую) модель , так и текущую модель. Допустим, вы находитесь в OrangeController и хотите включить модель Apple, и вы (в определении OrangeController):

class OrangeController extends AppController {
 var $uses = array( 'Orange', 'Apple' );
 // other stuff
}
...