0

我即将创建一个在线电子商务网站,用于销售鞋类、衣服等产品。但我无法弄清楚如何为此设置架构(表和所有)。我正在使用Mysql在Ruby on Rails中执行此操作,并且我是 ROR 的新手。

详情如下:-

我的产品有不同的类别,如鞋类、服装、配饰、包袋等,男女分开。

买家选择产品并将其添加到购物车并继续结账。我们只有货到付款类型的支付系统。我们不会创建任何用户帐户。没有用户帐户

我应该如何在 Rails 中使用所有控制器和模型实现这一点?
我应该为每个类别制作单独的表格吗?我应该如何对男士和女士
所需的产品进行分类?以 Rails 方式 提供完整的模式和关系表。

4

2 回答 2

4

你需要Categories桌子和Products桌子。在产品表中,您需要category_id:integer字段。

类别.rb

has_many :products

产品.rb

belongs_to :category
has_many :line_items

购物车.rb

has_many :line_items

LineItem.rbline_items (带有product_id:integer和的表格cart_id:integer

  belongs_to :cart
  belongs_to :product

每次有人向其中添加 aproductcart,都会创建line_item一行,product_id如果cart_id客户订购了更多相同类型的产品,您还可以添加数量字段以进行更新。

对于男性女性类型的产品,您可以在产品表中添加一个字段,该字段将标识此产品是为他或她准备的,for_men: boolean, default:true

产品.rb

belongs_to :category
has_many :line_items

scope :men, -> {where(for_men: true)}
scope :women, -> {where(for_men: false)}

如果你打电话

 products = Product.all
 products.women

它只会向您显示标记为女性类型的产品,其中for_men字段为false

如果您按类别提取产品:

category = Category.find 1

category.products.women 

会告诉你productswomencategory

于 2013-07-26T06:54:28.073 回答
1

电子商务商店所需的主要表格是。

    Product table
    Product type - type can define its type and category which it belongs to
    Cart - This table depends how you are dealing with cart items.
    Users - have an assosisation has many with oder
    Orders - have an assosiation with order status
    Order status
    Discount or Coupon Code
    Inquiry
于 2013-07-26T08:45:42.483 回答