CakePHP: неопределенная переменная с использованием find иableable - PullRequest
0 голосов
/ 21 апреля 2011

Встреча с другой проблемой, которую я просто не могу найти в информации, что может быть причиной.

Я объявляю переменную $ make, и внутри представления ее не найти.

вот мой текущий код:

function makemodel($id = null) {
    $this->Make->id = $id;

    $makes = $this->Make->find('all', array(
        'conditions' => array('id' => $id),
        'contain' => array('Makemodel' => array('Road'))
        )
    );
}

} ?>

Я также пробовал это: $ this-> set -> ('make', $ this-> Make-> find (скрипт здесь));

Любой совет будет оценен, спасибо!

Существуют ли какие-либо справочные материалы, кроме книги cakePHP?

Массив ( [0] => Массив ( [Make] => Array ( [id] => 1 [url_make] => subaru [MakeName] => Subaru [MakeOrigin] => Япония [Summary] =>

            )

        [Makemodel] => Array
            (
                [0] => Array
                    (
                        [id] => 1
                        [ModelName] => Impreza WRX
                        [make_id] => 1
                        [Road] => Array
                            (
                                [0] => Array
                                    (
                                        [id] => 3
                                        [makemodel_id] => 1
                                        [RoadTypeID] => 1
                                        [name] => Dirt
                                    )

                                [1] => Array
                                    (
                                        [id] => 4
                                        [makemodel_id] => 1
                                        [RoadTypeID] => 2
                                        [name] => Snow
                                    )

                            )

                    )

            )

    )

)

Ответы [ 2 ]

1 голос
/ 21 апреля 2011

Предполагая, что вызов find работает правильно, вы должны передать данные с вашего контроллера на просмотр, используя метод set().

    function makemodel($id = null) {
    $this->Make->id = $id;

    $makes = $this->Make->find('all', array(
        'conditions' => array('id' => $id),
        'contain' => array('Makemodel' => array('Road'))
        )
    );
    $this->set(compact('makes'));
}
0 голосов
/ 21 апреля 2011

find возвращает правильные результаты?

function makemodel($id = null) {
    $makes = $this->Make->find('all', array(
        'conditions' => array('id' => $id),
        'contain' => array('Makemodel' => array('Road'))
        )
    );
    $this->set('makes', $makes);
}
...