Rails数据库架构

时间:2015-04-17 13:43:33

标签: ruby-on-rails database schema models

警告:我对rails和应用程序开发一般都是新手,所以请原谅任何noobness。

我试图找出我的应用程序的数据库架构。我有以下型号:公司,用户(员工),产品,客户和订单。

背景:该公司有一个由用户(员工)维护的数据库。客户可以访问公司站点,登录然后访问数据库以查看产品及其库存水平。然后,他们可以进行购买,即订单。我已经通过这些关联获得了以下架构:

  • 公司:has_many用户,has_many产品,has_many客户,has_many客户订单。
  • 用户(员工):belongs_to公司
  • 产品:belongs_to公司
  • 客户:belongs_to公司
  • 订单:belongs_to公司通过客户

这是正确的还是我错过了什么? 将不胜感激任何建议。谢谢。

2 个答案:

答案 0 :(得分:0)

根据你想要达到的目标,这似乎是一个良好的开端。

只有缺陷:

class Client
  has_many :orders
end

缺失。

不过,我会明确表示“用户”真的是员工和“客户”,即客户。 (希望我不会在这里划线)

答案 1 :(得分:0)

我相信你确实错过了一些表格。

你需要类别吗?你需要一个类别表。

你能订购多少产品吗?你需要另一张桌子(1个订单有很多订单详情)。

您打算如何存储产品详细信息?例如,如果每种产品有多种尺寸,那么你还需要一张桌子。

我也不太明白为什么你需要客户端模型而不是客户端使用你的用户模型?

Company has many :clients,class_name:"User"