У меня есть следующий код, в котором я нахожу один тег. Я хочу содержать все сообщения, которые относятся к тегу, который не был "удален". Затем я хочу найти все теги, к которым принадлежат эти сообщения.
В качестве теста я прикрепил две модели к Post на рекурсии третьего уровня, Tag и User, с помощью содержимого. Содержимое поведения извлекает модель пользователя, связанную с публикацией, но модель тега, связанная с публикацией, не отображается. Любая идея, если этот тип рекурсии (на основе исходной модели) разрешен в CakePHP?
Я пробовал содержимое с условиями Tag и без них, поэтому я знаю, что это не является причиной проблемы. Если это было проблемой, то я должен получить пустой массив тегов, но там ничего нет.
$tag = $this->Tag->find(
'first',
array(
'conditions' => $conditions,
'contain' => array(
'Post' => array(
'conditions' => array(
'Post.deleted' => 0
),
'limit' => 25,
'User',
'Tag' => array(
'conditions' => array(
'Tag.deleted' => 0
)
)
)
)
)
);
Я знаю, что есть способы обойти это, но меня особенно интересует, почему сдерживаемое поведение делает это. Я уверен, что более эффективно получить все теги для сообщения в этом вопросе, а не циклически просматривать результаты сообщения и повторно запрашивать теги. Я надеюсь, что у кого-то будет опыт решения этой проблемы, но сегодня я покопаюсь в коде поведения CakePHP Containable, чтобы узнать, предназначен ли он для фреймворка или возможной ошибки.