使用Grails资源插件,如何基于用户';什么地方?

使用Grails资源插件,如何基于用户';什么地方?,grails,localization,internationalization,grails-2.0,Grails,Localization,Internationalization,Grails 2.0,我正在使用带有jQuery验证的Grails资源插件。jQuery验证将特定于语言环境的文本声明为JS文件: /localization messages_ar.js messages_bg.js messages_ca.js 等等等等。在我的ApplicationResources.groovy文件中,声明了以下块: form { resource url: '/js/jquery/jquery.validate.js' resource url: '

我正在使用带有jQuery验证的Grails资源插件。jQuery验证将特定于语言环境的文本声明为JS文件:

/localization
    messages_ar.js
    messages_bg.js
    messages_ca.js
等等等等。在我的
ApplicationResources.groovy
文件中,声明了以下块:

form {
    resource url: '/js/jquery/jquery.validate.js'
    resource url: '/js/jquery/jquery.validate.additional-methods.js'
    resource url: '/js/jquery/localization/messages_es.js'
}

但这是一个硬编码值。有什么方法可以配置资源插件,根据用户的区域设置加载正确的JS文件吗?

我过去是这样做的:

  • 定义一些外部捆绑包并以accept language头(例如messages_en.js或messages_es.js)结束它们
  • 在您的视图中,当您布置资源时,添加如下内容:

这应该基于本地数据正确地提取资源


希望有帮助

嗨,约翰尼,谢谢你的回答。我在这里遇到的问题是,
messages_xx.js
文件取决于首先加载jQuery验证,而我并不是在每个页面上都有它(只有那些有表单的页面)。如果包含某个模块,有没有办法将
配置为只包含JS文件?我不这么认为。但是,您可以选择1。根据您的JQuery简化版本对验证插件进行分类(请记住,这应该只下载一次,然后缓存在浏览器中),2。使用验证插件(再次;下载一次,尽管效率低于以前的IMO)或3对messages*文件进行Cat。在包含消息*文件的页面上手动包含插件。希望这有帮助!