Как получить поля из связанных моделей - PullRequest
0 голосов
/ 08 ноября 2011

У меня есть следующие три таблицы базы данных:

Products
########
id
title
artist_id

Arists
######
id
profile
person_id

People
######
id
first_name
last_name

В моей модели Product как создать метод для возврата продукта title вместе с first_name?

художника

Я установил следующие ассоциации моделей:

Product belongs to Artist
Artist belongs to Person

Ответы [ 2 ]

0 голосов
/ 09 ноября 2011

Containable - определенно способ фильтрации связанных записей.Убедитесь, что вы добавили $ actAs = array ('Containable') в вашу модель или app_model.

Тогда вы можете делать такие вещи, как:

$this->Product->find('all', array(
    'contain' => array(
        'Artist' => array(
            'Person' => array(
                'id',
                'first_name'
            )
        )
    )
));
0 голосов
/ 08 ноября 2011

Предполагая, что вы уже установили отношения в этих моделях, вам просто нужно установить его recursive:

$this->Product->recursive = 2;
print_r($this->Product->find('all'));
...