ruby-on-rails – Rails:更改区域设置和保留页面参数

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails:更改区域设置和保留页面参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个导航栏,其中包含指向不同语言的链接
<%= link_to t('header.english'),locale: "en" %>

问题是当用户尝试在包含URL中的其他参数的页面上切换语言时.此时更改语言环境会重新加载页面删除所有其他参数.

那么,如何将所有参数从当前页面传递到语言环境切换链接

例如,何时

/page/new?param1=1&param2=2

打开,用户切换语言环境,

/page/new?locale=en

打开,两个附加参数都从网址中删除.

解决方法

编辑:这不是一个很好的方式来做这件事.见下面的评论.

问题是,在创建区域设置切换器链接时,您没有将当前参数传递给link_to.

将导航栏链接更改为:

<%= link_to t('header.english'),params.merge(locale: "en") %>

另见:Add querystring parameters to link_to

猜你在找的Ruby相关文章