Ruby on rails 在Rails中设置多个自动更新的关联

Ruby on rails 在Rails中设置多个自动更新的关联,ruby-on-rails,ruby,activerecord,associations,associative-array,Ruby On Rails,Ruby,Activerecord,Associations,Associative Array,首先,很抱歉我提出了一个愚蠢的问题。我正在将一个Sinatra应用程序迁移到Rails,但有点困难,因为我是Rails方面的新手 我有两种型号,用户和订单。我在模型中建立了has\u many&belish\u to关联,并在orders中添加了一个user\u id关联列 但我觉得用户也应该有某种关联栏?(虽然我不知道如何设置) 具体而言,我希望能够查看订单,并告知客户以前是否订购过,例如: <% @orders.each do |order| %> <% if (order

首先,很抱歉我提出了一个愚蠢的问题。我正在将一个Sinatra应用程序迁移到Rails,但有点困难,因为我是Rails方面的新手

我有两种型号,用户和订单。我在模型中建立了has\u many&belish\u to关联,并在orders中添加了一个user\u id关联列

但我觉得用户也应该有某种关联栏?(虽然我不知道如何设置)

具体而言,我希望能够查看订单,并告知客户以前是否订购过,例如:

<% @orders.each do |order| %>
<% if (order.user.orders > 1) %> Y<% end %>
<% end %>

1) %%>Y

但是,虽然我可以访问用户,但我无法访问他们关联的所有订单。如何设置列来执行此操作,最好是在向列分配新订单时自动更新列?

这是一种父子情况。User是父级,Order是子级。父母不储存外键,只有孩子。如果模型设置正确,用户应该有很多。那么你应该能够:

user.orders

只要新订单正确存储了用户id,所有订单都应该正常工作。

这是一种父子情况。User是父级,Order是子级。父母不储存外键,只有孩子。如果模型设置正确,用户应该有很多。那么你应该能够:

user.orders

只要新订单正确存储了用户id,所有订单都应该正常工作。

您的型号现在已经足够:

class Order < ActiveRecord::Base
  belongs_to :user # foreign_key user_id
end

class User < ActiveRecord::Base
  has_many :orders
end

现在您的模型已经足够了:

class Order < ActiveRecord::Base
  belongs_to :user # foreign_key user_id
end

class User < ActiveRecord::Base
  has_many :orders
end

属于多个
协会?一个订单可以属于多个用户?@augustoccesar Oops,很抱歉-输入错误。
属于多个
关联?一个订单可以属于多个用户?@augustoccesar Oops,很抱歉-输入错误。非常感谢您的帮助!现在一切都在和伯爵合作。代表我犯了愚蠢的错误,不习惯在后台为我做这些事!非常感谢你的帮助!现在一切都在和伯爵合作。代表我犯了愚蠢的错误,不习惯在后台为我做这些事!谢谢你的帮助和信息:)是的,现在一切正常。谢谢你的帮助和信息:)是的,现在一切正常。