我正在使用Ruby on Rails的会话方法,所以我有这样的会话[:user_params]哈希:
password_confirmation: "test"
password: test
email: test@test.ij
我只需在视图文件中使用语法 session [:user_params] 即可访问该文件。
现在我只想访问'email'参数,但尝试使用 session [:user_params] [:email] ,我总是得到一个空值。如何访问此值?
答案 0 :(得分:2)
您可以尝试session[:user_params]['email']
。我不确定Rails是否会将整个会话哈希序列化/反序列化为HashWithIndifferentAccess。
答案 1 :(得分:1)
我不确定你是如何设置你存储的哈希:user_params,但这就是我要做的事情,它似乎有效:
puts " email: '#{session[:user_params][:email]}'"
session[:user_params] ||= {}
session[:user_params][:password_confirmation] = "test"
session[:user_params][:password] = "test"
session[:user_params][:email] = "test@test.ij"
如果您在第一次看到''用于电子邮件时将此代码放入控制器操作中。第二次它将显示电子邮件的“test@test.ij”。希望有所帮助。