Ruby on rails 我想让我的用户添加他们的;产品“;记下他们有多少人
嗨,我有一个用户模型,我也有一些他们的信息字段(姓名,电子邮件,简历等) 我希望能够让用户将他们拥有的产品添加到他们的帐户信息中 这将只是产品的名称(仅文本),但我还希望能够统计它们的总体数量,以便我可以显示如下内容: 用户有10种产品(产品1、产品2等)Ruby on rails 我想让我的用户添加他们的;产品“;记下他们有多少人,ruby-on-rails,ruby,Ruby On Rails,Ruby,嗨,我有一个用户模型,我也有一些他们的信息字段(姓名,电子邮件,简历等) 我希望能够让用户将他们拥有的产品添加到他们的帐户信息中 这将只是产品的名称(仅文本),但我还希望能够统计它们的总体数量,以便我可以显示如下内容: 用户有10种产品(产品1、产品2等) 我不知道该怎么做。提前感谢。用自己的表格制作产品模型 那么里面的用户做有很多:产品 然后您可以执行@user.products.count下一步是:这如何允许不同用户购买给定的产品,例如唯一的UPC 毕竟,像“大凸耳螺母”这样的产品可以被不同
我不知道该怎么做。提前感谢。用自己的表格制作产品模型 那么里面的用户做
有很多:产品
然后您可以执行@user.products.count
下一步是:这如何允许不同用户购买给定的产品,例如唯一的UPC
毕竟,像“大凸耳螺母”这样的产品可以被不同的人买到
因此,您可能需要的是一个purchases表,它基本上是一个连接表,具有用户id和产品id
你可以做user.purchases.count
这通常是通过以下关系实现的:
User has_many :purchases
User has_many :products, :though => :purchases
Purchase belongs_to :user
Purchase belongs_to :product
Product has_many :purchases
Product has_many :users, :through => :purchases
严格地说,它也可以通过HABTM来实现(has_和_属于_many!),但这在很大程度上已经失宠了。它只允许两个字段,并且是数据库中不存在的虚拟表。
HABTM已经不再受欢迎,因为只要你想添加一个额外的属性(在现实世界中非常常见),你就需要切换到has_many:在一个完全开发的应用程序中,通过has_many可能会让你头疼