Как получить пару Имя-значение из опции выбора Aem через модель слинга - PullRequest
0 голосов
/ 02 февраля 2020

У меня есть несколько выпадающих меню, где выпадающее меню (скажем, myLocale) сохраняется как String [] под страницей. Там я вижу свойство myLocale String [] en, us, gb. Т.е. значение параметра под компонент на моей странице. Предположим, я также хочу получить имя опции. Как это сделать в модели слинга. Я не вижу, чтобы имя сохранялось под узлом компонента под моей страницей.

Ответы [ 2 ]

0 голосов
/ 03 февраля 2020

Вы можете получить карту значений, содержащую имя и значение свойства в виде пар ключ-значение компонента или ресурса. Это ValueMap properties = currentResource.getValueMap(); даст вам карту значений, хранящуюся в свойствах, которые вы можете затем перебрать. Надеюсь, это поможет.

0 голосов
/ 03 февраля 2020

Название обычно не более чем ярлык, чтобы сделать вещи более удобными для людей, использующих мультиселектор. Он не входит в стандартную форму представления. У вас есть несколько вариантов решения этой проблемы: 1. Вместо того, чтобы просто иметь значение в атрибуте value тега option, вы можете заставить свои редакторы форм записывать что-то вроде «value | label». Как только он будет записан в репо, вы можете разделить его. Но я думаю, что это не лучшее решение ... 2. Другой вариант - если мы говорим о параметрах выбора для вашей страницы контента (не для диалогов редактора), это доступ к странице контента и компоненту - ваша модель стропа должна иметь этот ресурс - а затем прочитать значение оттуда. 3. Если вы хотите поговорить о диалоге редактора, попробуйте сохранить параметры в отдельном файле и получить доступ к этому файлу.

HTH

...