Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 3 访问子对象';控制器中的s id_Ruby On Rails 3_Controller_Params - Fatal编程技术网

Ruby on rails 3 访问子对象';控制器中的s id

Ruby on rails 3 访问子对象';控制器中的s id,ruby-on-rails-3,controller,params,Ruby On Rails 3,Controller,Params,我有一个模型用户,他有很多物品(一个物品属于一个用户)。我有一个“显示用户”页面,显示用户的信息和他所有物品的列表。我添加了一个链接到每个用户的归属访问一个显示归属页面,这个链接目前不起作用,因为我不知道如何访问归属的id 用户和归属都定义为资源,归属不是用户的成员 下面是一段代码: 用户显示页面包含: <% unless @user.belongings.empty? %> <table class="belongings" summary="User's objects

我有一个模型用户,他有很多物品(一个物品属于一个用户)。我有一个“显示用户”页面,显示用户的信息和他所有物品的列表。我添加了一个链接到每个用户的归属访问一个显示归属页面,这个链接目前不起作用,因为我不知道如何访问归属的id

用户和归属都定义为资源,归属不是用户的成员

下面是一段代码:

用户显示页面包含:

<% unless @user.belongings.empty? %>
  <table class="belongings" summary="User's objects and services">
    <%= render @belongings %>
  </table>
  <%= will_paginate @belongings %>
<% end %>
==>:id始终指用户的id。我尝试使用:user\u id访问该用户,但我有一个“找不到没有id的用户”,如果我尝试使用:owning\u id访问归属,我有一个“找不到没有id的归属”

我知道这是最基本的,但我是Rails新手,我已经花了好几个小时研究如何解决这个问题


非常感谢您的帮助

通过
:collection
选项将集合传递给分部时,分部将为集合中的每个成员插入一次

<%= render :partial => "belonging", :collection => @belongings %>



现在,控制器的
show
操作。rb将收到归属的id而不是用户。

非常感谢Syed,你救了我一天!我真的很感激你给我的完整解释,因为你可能已经注意到我有点迷失和困惑了!
def show
    @user = User.find(params[:id])
    @belonging = @user.belongings.find(params[:id])
    @title = @belonging.name
  end
<%= render :partial => "belonging", :collection => @belongings %>
<%= link_to "Show item", belonging_path %>
<%= link_to "Show item", belonging_path(belonging.id) %>