Yii: Как определить родительский объект для связанных детей?

2 таблицы: темы и комментарии (например) => Тема & Модели комментариев

Thread.php

public function relations()
{
return array(
'comments'=>array(self::HAS_MANY, 'Comment', 'thread_id'),
);
}

Как определить свойство родительского объекта Thread для каждого дочернего комментария?

Что-то вроде этого:

$model = Thread::model()->with('comments')->findAll();
foreach($model->comments as $comment)
echo $model->id == $comment->thread->id; // 1

Постскриптум Извините за мой английский, я знаю, что это так плохо.

0

Решение

Вы должны определить это правило в своем Comment модель:

public function relations()
{
return array(
'thread'=>array(self::BELONGS_TO, 'Thread', 'thread_id'),
);

}

Это означает, что каждый комментарий принадлежит только одной теме.
Теперь с этой структурой вы можете сделать следующее:

$comments = Comment::model()->with("thread")->findAll();
foreach($comments as $comment)
...
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]