填充rails查询中的object_id字段

时间:2015-12-18 16:30:06

标签: ruby-on-rails model rails-activerecord auto-populate

我有两个型号。一个命名用户,一个命名为订单。用户有一个order_id字段,其中包含订单的ID。我已经设置订单属于用户和用户有很多订单。 现在我希望有一个视图,其中显示了一些用户以及该用户的每个订单。显然,如果我能得到一个具有用户而不是order_id的位对象,那么它会很好,具有实际的顺序。我知道有些语言你可以这样:

found_user.populate(order_id)

是否可以选择在rails中执行此操作?我已经看过select函数,但它似乎无法工作,无论如何都不能用User.find(),这就是我正在使用的。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

当您说订单属于用户时,您应该在订单表中有user_id,而在order_id表中不应有users

  

现在我希望有一个视图,其中显示了一些用户和每个用户   订购该用户。

现在,在您要显示用户及其订单的视图中,请尝试以下代码

<% @users.each do |user| %>
  <%= user.name %> #assuming you have name field in users table.
  <% user.orders.each do |order| %>
    <%= order.name %> #assuming you have name field in orders table.
  <% end %>
<% end %>

在尊重的控制器操作中定义的@users = User.all