【发布时间】:2009-10-29 03:03:35
【问题描述】:
我正在为客户建立一个 EC 网站,项目经理提出了一些奇怪的想法,我正在努力实际实施他向客户销售的内容。
这是我的主要问题和系统设置的快速总结:产品在类别内,类别可能是另一个类别的子类别。因此,该类别在网站的左侧边栏上显示为树。
用户可以浏览任何类别,甚至是非“叶”类别,如果用户单击非叶类别,则应在 1 级类别上显示类似的列表(同样适用于 2 级类别):
big category 1
category level ( 3 or 2 )
product 1
product 2
product 3
category level ( 3 or 2 )
这些东西还应该有一些分页,并出现在每个页面上的 5 个产品上。另外,类别应该以它们出现在左侧菜单中的相同方式排序......我的数据库方案是这样的:
+-------------+ +-------------+
+ category + + product +
+-------------+ +-------------+
+ category_id + + product_id +
+ parent_id + + category_id +
+-------------+ +-------------+
我真的不知道我应该如何编写 SQL 以确保产品按应有的顺序显示(比如订购产品和类别有菜单)。
我还关心整个设置的性能,如果用户选择非“叶子”类别,我将不得不搜索所有子类别并在 (id1, id2, id3) 中创建一个大类别,我知道根据经验,长 IN 语句表现不佳。
如果有人遇到相同的设计/问题,并有一些建议如何制作,我将不胜感激。
【问题讨论】:
标签: php database-design e-commerce