Как отобразить значение карты, которая также является картой в теге <g: select> или <select>?
У меня есть карта, которая выглядит так:
final static def BANK_NAMES = [
bofa:[fullname:'Bank of America',hasPin:false],
chase:[fullname:'Chase Bank',hasPin:false],
wells:[fullname:'Wells Fargo Bank',hasPin:false],
citi:[fullname:'Citibank',hasPin:false],
us:[fullname:'US Bank',hasPin:false],
usaa:[fullname:'USAA',hasPin:false],
charles:[fullname:'Charles Schwab',hasPin:false]
]
Я пытался отобразить значение следующим образом:
<g:each in="${BankConstants.BANK_NAMES}" var="banks">
<option id="status">${banks}</option>
</g:each>
и это показывает так:
bofa={fullname=Bank of America, hasPin=false}
Есть ли способ показать значение "полное имя" в теге или. Может кто-нибудь, пожалуйста, помогите??
2 ответа
Решение
Ты можешь попробовать:
<g:each in="${BankConstants.BANK_NAMES}" var="banks">
<option id="status">${banks.value.fullname}</option>
</g:each>
Ты можешь измениться
final static def BANK_NAMES = [
[id: 'bofa', fullname:'Bank of America',hasPin:false],
[id: 'chase', fullname:'Chase Bank',hasPin:false],
[id: 'wells', fullname:'Wells Fargo Bank',hasPin:false],
[id: 'citi', fullname:'Citibank',hasPin:false],
[id: 'us', fullname:'US Bank',hasPin:false],
[id: 'usaa', fullname:'USAA',hasPin:false],
[id: 'charles', fullname:'Charles Schwab',hasPin:false]
]
так что у вас будет список карт. Тогда у вас есть доступ к полному имени:
${banks.fullname}
Изменить: Вы также можете попробовать:
<g:each in="${BankConstants.BANK_NAMES.value}" var="banks">
<option id="status">${banks.fullname}</option>
</g:each>
но я не уверен, что это сработает.