CakePHP: найти заявление с «содержать» - PullRequest
2 голосов
/ 02 января 2012

следующая функция модели пользователя взята из плагина форума MilesJones.Может кто-нибудь сказать мне, что толку от слова «содержать» в stmt find.Я не смог найти ни одного примера с содержанием в поваренной книге CakePHP.Любая помощь приветствуется.

public function getProfile($id) {
    return $this->find('first', array(
        'conditions' => array('User.id' => $id),    
        'contain' => array(
            'Access' => array('AccessLevel'),
            'Moderator' => array('ForumCategory')
        )
    ));
}

Ответы [ 2 ]

8 голосов
/ 02 января 2012

По умолчанию при выполнении оператора find торт извлекает все данные из модели, в которой выполняется функция поиска, а также все данные из моделей, связанных с моделью. Большую часть времени вам не нужны эти дополнительные данные, Cake имеет сдерживаемое поведение именно для этой цели. Вы можете указать, какие данные связанной модели вы хотите получить в результате.

В приведенном выше примере оператор find извлекает первую запись из User model плюс связанные данные из Access and Moderator models.

Вот ссылка из книги CakePHP http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html

4 голосов
/ 02 января 2012

Вот документация cakephp о содержании

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