我刚刚开始使用 Rails,对于如何为 session 设置变量有点困惑。
在我的应用中,我希望用户能够选择英语或法语,并且当他们单击文章时,文章会以所选语言显示。
如果他们选择英语,则会保存为“Preferred_lang”。但是,他们可以随时更改它。
现在,我在文章显示页面的开头有这样的情况:
- if current_user.preferred_lang = 'English'
= render 'english'
- else
= render 'french'
这对我来说似乎不太有效。有没有办法在 session 开始时设置“current_language”,然后在用户更改时更新它?
最佳答案
它只是一个键值对(哈希)。所以你可以这样设置:
session[:preferred_lang] = @current_user.preferred_lang
然后您就可以使用它:
if session[:preferred_lang]
# I found a previously set preferred_lang
else
# No previously set prefferd_lang
end
然后您可以随时更新它,并根据需要删除它。
关于ruby-on-rails - 如何在 Rails 中设置 session 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38435434/