您可以从per中UrlMapping
读取映射名称并在映射中使用相同的名称。就像是:messageSource
Locale
UrlMapping.groovy
import org.springframework.context.i18n.LocaleContextHolder as LCH
class UrlMappings {
static mappings = {
def i18nContact = getGrailsApplication().getMainContext().getMessage('app.url.mapping.contact', [] as Object[], 'contact', LCH.getLocale())
"/${i18nContact}"(controller: 'static', action: 'index') { id = '/contact' }
}
}
消息属性
app.url.mapping.contact=联系人
messages_de.properties
app.url.mapping.contact=kontakt
您只需要继续在locales
相应的消息源中添加其他条目即可。
注意:您可以通过在as 中将
默认设置Locale
为 GERMANY 来进行测试resources.groovy
import org.springframework.web.servlet.i18n.FixedLocaleResolver
beans = {
localeResolver(FixedLocaleResolver, Locale.GERMANY) {
Locale.setDefault(Locale.GERMANY)
}
}