使用Grails资源插件,如何基于用户';什么地方?
我正在使用带有jQuery验证的Grails资源插件。jQuery验证将特定于语言环境的文本声明为JS文件:使用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: '
/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。在包含消息*文件的页面上手动包含插件。希望这有帮助!