pdoResources и join по значению TV
Всем привет, нужно загрузить ресурсы, и подтянуть к ним кастомные данные из другого класса. Вроде все просто, но как указать название TV в «join on»?
"on": "modResource.TVarticleСat = Category.id"{'pdoResources' | snippet : [
'parents' => $_modx->config['blogId'],
'includeTVs' => 'articleCat',
'toPlaceholder' => 'blogArchiveJson',
'where' => json_encode([
"id:NOT IN" => $hlIds
]),
'loadModels' => 'blog',
'class' => 'modResource',
'leftJoin' => '{
"Category": {
"class": "Category",
"on": "modResource.TVarticleСat = Category.id"
}
}',
'select' => '
modResource.pagetitle,
Category.id as cat_id,
Category.title as cat_title
',
'showLog' => 1,
'return' => 'json'
]}Перепробовал вроде все: tv.articleCat, modResource.tv.articleCat, modResource.TVarticlecat, articleCat и так далее. Подскажите плз, как правильно Комментарии: 6
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
как бы не называл TV — всегда эта ошибка. Если значение TV подставляю вручную (просто цифру ставлю) — тогда все работает правильно. Вот весь лог, если что (там учавствуют еще несколько полей, которые я убрал в запросе для упрощения)
1. сначала articleCat
2. потом articleСat
Далее исправляем косяки.
Поле выбирается с точкой «tv.articleCat», она воспринимается разделителем, выглядит как таблица tv, поле articleCat.
Could not process query, error #1054: Unknown column 'tv.articleCat' in 'on clause'
На всякий случай попробовал так
«on»: "`modResource`.`tv.articleCat` = `Category`.`id`"
Тоже не работает…