1

我正在尝试为以下场景准备最佳设计。

分类 -> 产品列表 -> 产品详情

因此,在产品详细信息屏幕中,用户可以选择将产品添加到他的购物车中。因此,每当用户打开他的购物车时,他就可以在购物车控制器下看到他的所有产品。用户可以再次从购物车中查看产品详细信息屏幕。

我的问题是如何最好地准备购物车数据库?维护单独的购物车实体是最好的解决方案?或者我可以在产品实体本身中有一个布尔值。但我认为保持 BOOL 并不是最好的解决方案。例如,如果我有 10,000 个产品,那么仅获取购物车项目我必须遍历完整的产品。

我认为最好的方法是维护单独的 Cart 实体并将 product_id 保存在其中。那么,您能告诉我它应该与 Cart & Product 建立什么样的关系吗?因为我猜购物车不能独立?

4

1 回答 1

2

您可能想要从购物车到产品的多对多关系;也许称为“内容”或其他什么?

如果用户一次只有一个购物车,您也可以在 Product 中使用布尔值;如果您将该布尔值标记为“已编入索引”,则获取所有设置为“是”的产品并不是很昂贵。(如果您使用的是 SQLite 后端。)

于 2012-12-14T12:52:30.683 回答