Ruby on rails 查看用户所做的所有预订

Ruby on rails 查看用户所做的所有预订,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在尝试查看用户所做的所有预订。我仍然需要一个为系统的其他用户提供所有预订的页面。我已经设置了另一个名为“使用控制器预订”的页面,尝试只查看用户预订。我试着看了看其他问题,但没能解决这个问题 目前在我的预订控制器中,我有 def index @user = User.find(session[:user_id]) @reservations = Reservation.find_by_id(@user) end 在我的视图booking index.html.erb中 <

我正在尝试查看用户所做的所有预订。我仍然需要一个为系统的其他用户提供所有预订的页面。我已经设置了另一个名为“使用控制器预订”的页面,尝试只查看用户预订。我试着看了看其他问题,但没能解决这个问题

目前在我的预订控制器中,我有

def index
    @user = User.find(session[:user_id])
    @reservations = Reservation.find_by_id(@user)
end
在我的视图booking index.html.erb中

<h1> Viewing All Reservations </h1>


<table class="table table-striped">
 <thead>
  <tr>
    <th>ID</th>
    <th>Vehicle ID</th>
    <th>User ID</th>
    <th>Start Date</th>
    <th>End Date</th>
    <th>Costs</th>
  </tr>
 </thead>
 <tbody>
 <% @reservations.each do |reservation| %>
  <tr>
    <td><%= reservation.id %></td>
    <td><%= reservation.user_id %></td>
    <td><%= reservation.vehicle_id %></td>
    <td><%= reservation.startDate %></td>
    <td><%= reservation.endDate %></td>
    <td><%= reservation.costs %></td>
  </tr>
 <% end %>
</tbody>
</table>
查看所有预订
身份证件
车辆ID
用户ID
开始日期
结束日期
成本

请告诉我哪里出了问题

find_by
只返回一条记录。您应该使用
where

def index
  @user = User.find(session[:user_id])
  @reservations = Reservation.where(user_id: @user.id)
end
您可以使用关联记录(假设用户
有多个:预订

def index
  @user = User.find(session[:user_id])
  @reservations = @user.reservations
end
如果要使用相同的方法显示您的预订或所有预订,可以添加一个参数

def index
  if params[:all]
    @reservations = Reservation.all
  else
    @user = User.find(session[:user_id])
    @reservations = @user.reservations
  end
end

find_by
只返回一条记录。您应该使用
where

def index
  @user = User.find(session[:user_id])
  @reservations = Reservation.where(user_id: @user.id)
end
您可以使用关联记录(假设用户
有多个:预订

def index
  @user = User.find(session[:user_id])
  @reservations = @user.reservations
end
如果要使用相同的方法显示您的预订或所有预订,可以添加一个参数

def index
  if params[:all]
    @reservations = Reservation.all
  else
    @user = User.find(session[:user_id])
    @reservations = @user.reservations
  end
end

谢谢,我使用了第二个解决方案。出于某种原因,它是按车辆id而不是用户id进行过滤的?我不知道您的车型。我说不出来。包括相关车型(用户、车辆、注册等)抱歉!刚刚发现它。我的错误,我把表格标错了。谢谢你的帮助!!谢谢,我使用了第二种解决方案。出于某种原因,它是按车辆id而不是用户id过滤的?我不知道你的车型。我说不出来。包括相关车型(用户、车辆、注册等)对不起!刚刚发现了。我错了,我把桌子贴错标签了。谢谢你的帮助!!