从数组中获取特定值并将其放入index.erb Ruby中

时间:2015-08-14 10:30:55

标签: ruby-on-rails ruby

我有这个数组:

session[:current_user] = { :nickname => auth.info['nickname'],
                                      :image => auth.info['image'],
                                      :uid => auth.uid }

auth.info['nickname']内容来自我从Omniauth Steam获得的用户输入。我想知道如何将它放入我的index.erb。

我目前有<p><%= session[:current_user][:nickname] %></p>,但这不起作用。如果我使用<p><%= session[:current_user]%></p>,它将显示整个数组。我怎样才能显示:昵称信息?

仅使用session[:current_user]输出

{"nickname"=>"Corybantic Walrus", "image"=>"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/d4/d45a66fee7932d270ec32d4457d865b485245cf1_medium.jpg", "uid"=>"76561198128055024"}

1 个答案:

答案 0 :(得分:2)

你有输出

{
  "nickname"=>"Corybantic Walrus", 
  "image"=>"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/d4/d45a66fee7932d270ec32d4457d865b485245cf1_medium.jpg", 
  "uid"=>"76561198128055024"
}

所以在hash中你有String而不是Symbol

这样的键

你必须这样称呼它:

session[:current_user]["nickname"]
# or
session[:current_user]['nickname']