Использование настраиваемой таблицы для подачи источника данных в раскрывающемся списке - PullRequest
0 голосов
/ 29 августа 2018

Давайте предположим, что у меня есть Custom Table с именем Possible URL target parameters с кодовым именем xyz.PossibleTargets с 2 столбцами: Explanation и Value. Как заполнить раскрывающееся поле для типа страницы данными, чтобы в раскрывающемся списке было Value (из таблицы) как Value и Explanation как name? Что я уже пробовал и не работает:

  1. Генерировать значение, разделить пары имен на новую строку и поместить его в список параметров:

    z = ""; foreach (x в CMSContext.Current.GlobalObjects.CustomTables ["xyz.PossibleTargets"]. Items) {z + = x.GetValue ("Value"); z + = ";"; z + = x.GetValue («Объяснение»); z + = "\ n"}; вернуть z;

    Валидатор не позволяет мне делать такой трюк.

  2. Установите параметр Macro expression и укажите перечислимый объект:

    CMSContext.Current.GlobalObjects.CustomTables [ "xyz.PossibleTargets"]. Items

    В преобразовании Элемент: {%Explanation%} и в столбце Значение {%TargetValue%}.

    Это также не работает.

Раскрывающаяся конфигурация

Как это сделать правильно? Документация и подсказки по полям не помогают.

Kentico v11.0.26

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Я думаю, что вы должны сделать это без пометки поля как макроса. Просто введите там макрос. Посмотрите на экран look on screen

0 голосов
/ 29 августа 2018

Нет необходимости использовать макрос, используйте прямой SQL, использование макроса только усложняет то, что кажется простым выпадающим списком.

SELECT '', '-- select one --' AS Explanation
UNION
SELECT TargetValue, Explanation
FROM xyz_PossibleTargets -- make sure to use the correct table name
ORDER BY ExplanationText

Это должно заполнить именно то, что вы ищете, без усложнения макроса.

...