1
我剛剛讀了很多,並用google搜索,但我現在很沮喪。grails g:select i18n
我有一個國家的域模型
class Country{
String countryCode //maybe EN, DE, CH...
}
現在我想裏面的翻譯。我在documentation(和谷歌)中讀到,可以用「id」從翻譯消息屬性文件中選擇它。例如:
country.code.1=America
country.code.2=England
country.code.3=Germany
但這不是我想要的。我想有這樣的:
country.code.US=America
country.code.EN=England
country.code.DE=Germany
所以,我發現從計算器一個可能的解決方案:translate a HTML select element in Grails 這將意味着我,我必須把它像這樣:
<g:select name="country"
from="${allCountries}"
value="${country}"
optionKey="id"
optionValue="${ {countryCode->g.message(code:'country.code.'+countryCode)} }"/>
但我的結果是「country.code.grails.Country:1」下拉列表中(等每個國家)
如果我改變GSP-G的最後一行:選擇實施:
[...]optionValue="${ {countryCode->g.message(code:'country.code.US')}
正如你看到的硬編碼!而且這個作品:-D
希望你能幫我,非常感謝你!
NO - 不起作用。我的下拉列表中填充了countryCode的數據庫值,例如'US','DE'等:-( – grailsInvas0r
grails將通過查找來自「valueMessagePrefix +」的密鑰的消息來解析標籤。「+ value' – Chris
對不起,你是對的!我編輯了我的回覆。 – Chris