如何在rails中的视图中检索哈希值

时间:2010-12-09 06:24:43

标签: ruby-on-rails hash

我在控制器中有一个动作:

def user_detail
    @user_detail = UserDetail.find_by_id(11)
end

在视图中:

<%= @user_detail -%> // displays me like #

我正在尝试检索@user_detail的内容:实际上哈希包含{:empid=>"11111", :prjtname=>"aaaaa", :prjtrole=>"Developer"}

如何显示用户详细信息的empid和其他值?

4 个答案:

答案 0 :(得分:7)

由于我知道您之前提出的问题,我认为这是您实际想要使用的语法:

<%= @user_detail.additional_info[:empid] %>

除非您重命名哈希的名称:)

另一种方法,如果你想要哈希中的所有内容,但每个记录的密钥各不相同,你可以像这样循环遍历它们:

<% @user_detail.additional_info.each_pair do |key, value| %>
  <p>Key: <%= key %> Value: <%= value %></p>
<% end %>

答案 1 :(得分:2)

要像您发布的示例一样获得简单的调试输出,这将处理它:

<%= @user_detail.inspect %>

答案 2 :(得分:2)

试试这个<%= @user_detail.emplid %> <%= @user_detail.prjtname %> <%= @user_detail.prjtr %>

答案 3 :(得分:1)

更多来自@ dln答案的提取

尝试使用

<%= @user_detail[:emplid] %>
<%= @user_detail[:prjtname] %>
<%= @user_detail[:prjtr] %>

希望这能解决你的问题