在 Grails 应用程序中检索活动区域设置

2022-09-02 11:18:07

我知道我可以使用“lang”参数自动更改当前区域设置,如文档中所述,但是如何跟踪这些更改,例如更新存储在当前用户域对象中的语言?

request.locale不起作用,因为它不反映通过”?lang=xx"


答案 1

在控制器中,您可以使用 获取区域设置。RequestContextUtils

import org.springframework.web.servlet.support.RequestContextUtils as RCU

然后,解析请求的区域设置:

RCU.getLocale(request)

答案 2

您还可以使用不需要请求的 哪个作为参数LocaleContextHolder

import org.springframework.context.i18n.LocaleContextHolder;

LocaleContextHolder.getLocale();

推荐