为 Grails 应用程序进行国际化时出错
Error while doing internationalization for Grails application
我正在为我的 Grails 应用程序做国际化,这在我的域中:
category (nullable:false, inList:Holders.config.categories)
Config.groovy
文件中的这个:
categories=['cat1', 'cat2', 'cat3']
这是 messages.properties
文件中的内容:
ads.category.cat1=category 1
ads.category.cat2=category 2
ads.category.cat3=category 3
显示视图中的内容:
<g:if test="${adsInstance?.category}">
<li class="fieldcontain">
<span id="category-label" class="property-label"><g:message code="ads.category.label" default="Category" /></span>
<span class="property-value" aria-labelledby="category-label"><g:fieldValue bean="${adsInstance}" field="category"/></span>
</li>
</g:if>
所有视图都显示正确的单词,除了 show
显示 cat1
(这是在配置文件中找到的内容)以及保存在数据库中的内容,因为它应该显示和保存messages.properties
文件 category 1
中的内容。我该如何解决?
使用
<g:message code="ads.category.${adsInstance.category}" />
而不是
<g:fieldValue bean="${adsInstance}" field="category"/>
我正在为我的 Grails 应用程序做国际化,这在我的域中:
category (nullable:false, inList:Holders.config.categories)
Config.groovy
文件中的这个:
categories=['cat1', 'cat2', 'cat3']
这是 messages.properties
文件中的内容:
ads.category.cat1=category 1
ads.category.cat2=category 2
ads.category.cat3=category 3
显示视图中的内容:
<g:if test="${adsInstance?.category}">
<li class="fieldcontain">
<span id="category-label" class="property-label"><g:message code="ads.category.label" default="Category" /></span>
<span class="property-value" aria-labelledby="category-label"><g:fieldValue bean="${adsInstance}" field="category"/></span>
</li>
</g:if>
所有视图都显示正确的单词,除了 show
显示 cat1
(这是在配置文件中找到的内容)以及保存在数据库中的内容,因为它应该显示和保存messages.properties
文件 category 1
中的内容。我该如何解决?
使用
<g:message code="ads.category.${adsInstance.category}" />
而不是
<g:fieldValue bean="${adsInstance}" field="category"/>