Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 正确遍历相关表中的数据_Ruby On Rails_Ruby On Rails 4_Devise - Fatal编程技术网

Ruby on rails 正确遍历相关表中的数据

Ruby on rails 正确遍历相关表中的数据,ruby-on-rails,ruby-on-rails-4,devise,Ruby On Rails,Ruby On Rails 4,Devise,我正在做一些应该简单的事情,但我遇到了麻烦,因为我是rails新手 我有一个名为时间表的表和一个名为Entry的表 我正在我的时间表显示视图中工作,希望遍历时间表上的相关条目 我的模型是这样设置的。一个用户有很多:时间表。时间表属于_:user并且有_多个_:entries。和条目属于:时间表 我的时间表视图如下所示: <% @current.each do |t| %> <td><%= t.entries :customer_name %></

我正在做一些应该简单的事情,但我遇到了麻烦,因为我是rails新手

我有一个名为时间表的表和一个名为Entry的表

我正在我的时间表显示视图中工作,希望遍历时间表上的相关条目

我的模型是这样设置的。一个用户有很多:时间表。时间表属于_:user并且有_多个_:entries。和条目属于:时间表

我的时间表视图如下所示:

  <% @current.each do |t| %>
  <td><%= t.entries :customer_name %></td>   
  <td><%= t.entries :order_number %></td>
  <td><%= t.entries :time_in %></td>
  <td><%= t.entries :time_out %></td> 
  <% end %>
每次迭代我都会得到这样的奇怪输出:

#<ActiveRecord::Associations::CollectionProxy::ActiveRecord_Associations_CollectionProxy_Entry:0xb59dfcc8>
#
任何帮助都将不胜感激。

因为您已经

@current = current_user.time_sheets.entries

鉴于:

  <% @time_sheets.each do |sheet| %>
     <% sheet.entries.each do |t| %>
        <td><%= t.customer_name %></td>   
        <td><%= t.order_number %></td>
        <td><%= t.time_in %></td>
        <td><%= t.time_out %></td> 
     <% end %>
  <% end %>


我假设customer\u name、order\u name是您输入表中的字段名称。

只是猜测,但是
是否打印您要查找的内容?您已经在获取控制器中的所有条目。我在尝试时遇到此错误。未定义的方法“客户名称”#
<% @current.each do |t| %>
<td><%= t.entries :customer_name %></td> 
   def show
        if current_user
        @time_sheets = current_user.time_sheets
      else
        redirect_to new_user_session_path, notice: 'You are not logged in.'
      end
   end
  <% @time_sheets.each do |sheet| %>
     <% sheet.entries.each do |t| %>
        <td><%= t.customer_name %></td>   
        <td><%= t.order_number %></td>
        <td><%= t.time_in %></td>
        <td><%= t.time_out %></td> 
     <% end %>
  <% end %>