首先赞一下 csdn的blog改版了~
最近在搞一个网站,提供内容服务,其实就是内容上的b2c吧~
分类肯定是要有的,搜索肯定是要有的
但是现在似乎更流行像淘宝或京东那样的,先搜索一下,然后通过标签/分类逐步筛选出自己想要的东西。
在标签式筛选中有如下几点要求:
1.是否有分类树?
没有。以现在的情况来看,似乎没有也是可以的,只要保证顺序合理就ok了~比如鼠标里,联想和罗技都有有线和无线,无法要求用户先筛选哪个后筛选哪个。。。似乎这才是标签的精髓嘛
2.如何实现?
对于标签式筛选而言,标签的填写不是自由的,而是设置好的,标签也是“键-值”对应关系。虽然在筛选上没有依赖关系,但是某些标签在某些类别里是没有必要存在的,所以对于分类而言,标签是有依赖的,可以形成树。
3.具体到db
A表,建立键-值关系表。如:鼠标的“连接方式”分为“有线”,“无线”,“其它”这样
B表,键的依赖树。如:鼠标和键盘有“连接方式”的键,但是CPU就没有这个筛选条件了~
4.搜索效率
每次筛选,似乎都要筛选一遍B表,查看哪些子树,然后筛选A表,找到相应的内容
最好可以在B表上建立索引,增删数据时对它进行维护,对于数量为0的内容,就可以不去A表探索了
相对来说还是比较低的,不过对于小规模的应用来说还是够了……………………