Добрый день, есть такой запрос:
(получить товары относящиеся к категоии и ее потомкам)
$products = Products::findBySql("
SELECT
*
FROM
m_products
WHERE
category_id
IN (
SELECT
id
FROM
t_products
WHERE
lft >= '{$model->lft}'
AND
rgt <= '{$model->rgt}'
)
"
)->andWhere([
'exist'=>PublicActiveRecord::EXIST_PUBLIC
])->all();
Хочу корректнее это делается в yii2 без sql?
По идее можно как-то так получить список идентификаторов категорий массивом:
array_merge([$category->id], $category->children()->select('id')->column())
Но это только категории, надо еще как то достать товары.
Придется еще 1 запрос делать с
in
Подскажите - как правильно надо, может через
with,
relation scope или как то еще?