есть связь HAS_MANY на дочернюю модель Comments. Я хочу фильтровать Статьи по полю text комментария.
Для этого собственно есть код $criteria->compare('comments.text', $filters['commentText'], true); Проблема в том что если $criteria->together = true, то sql запрос строится корректно, join на comments в запросе есть. Но если $criteria->together = false, то compare ломается, так как в запросе нет join на comments. Я бы оставил $criteria->together = true, но тогда неправильно отрабатывает LIMIT И OFFSET. Есть ли какой-то вариант сделать compare на колонку связи HAS_MANY без $criteria->together = true ?
всегда можно на два запроса разделить: сначала получить Article, а затем получить Comments с условием id IN (список id статей) и нужным вам условием по тексту комментария. Таким образом и пагинация будет работать. Менее удобно и красиво, чем joined модели, но работать будет
Обсуждают сегодня