pdofetch функция в select

Здравствуйте. Пытаюсь сделать выборку в pdofetch с использованием mysql функций.
select выглядит так:
'select' => '{
        "MedPred" : "MedPred.*",
        "profile" : "COUNT(profile.id) as `users`, COUNT(IF(get_upload_count(profile.internalKey) > 0, 1, NULL)) as `uploads`"
    }'
Судя по логам select нормально добавляется:
0.0002320: Added selection of modUserProfile: COUNT(profile.id) as `users`, COUNT(IF(get_upload_count(profile.internalKey) > 0, 1, NULL)) as `uploads`
Но в запрос селект втыкается с лишними кавычками и вопрос не работает:
COUNT(profile.id) as `users`, COUNT(IF(get_upload_count(profile.internalKey) > 0, `1`, NULL)) as `uploads`>
Может кто нибудь встречался с этим багом?
Павел
17 октября 2019, 12:19
modx.pro
131
0

Комментарии: 2

Павел
17 октября 2019, 14:46
0
В общем, оказалось, проще убрать проверку в функцию, чтоб xpdo не спотыкался на запятых.
    Сергей Шлоков
    18 октября 2019, 07:40
    1
    +1
    Можно написать в другом формате
    'select' => '["MedPred.*, COUNT(profile.id) as `users`, COUNT(IF(get_upload_count(profile.internalKey) > 0, 1, NULL)) as `uploads`"]'
    В таком формате xPDO вставляется без обработки.

    П.С, Это json массив с одной строкой.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      2