Список шаблонов форм в другом представлении контроллера - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть таблица form_templates и таблица форм. Они связаны с помощью form_template_id. Я хочу иметь возможность перечислить form_templates, которые были созданы по заголовку в файле select.ctp, который я создал в контроллере Forms. Просто хотите узнать, как это сделать с cakephp?

На данный момент в моем FormsController есть следующий код:

    public function select()
{
    $this->set('page_heading', 'Current Forms');

    $contain = [];

    $formTemplate = $this->FormTemplates->Forms->find('list', ['order' => 'title'])->where(['active'=>true]);

    $forms = $this->paginate($this->Forms->FormTemplates);
    $this->set(compact('forms', 'formTemplate'));
}

Но я получаю вызов функции-члена find () при нулевой ошибке.

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

1 Ответ

0 голосов
/ 18 сентября 2018

В вашем FormsController автоматически загружается только FormsTable, и вы пытаетесь получить доступ к модели, которая не загружена в данный момент:

$formTemplate = $this->FormTemplates->Forms->find(...

Чтобы получить то, что вы хотите, вы должны получить доступ к FormTemplatesTable, например:

$formTemplate = $this->Forms->FormTemplates->find(...
...