随着电子商务的崛起,网站的购物车系统已经成了普遍的功能,近几年Rails快速窜红,但是很多开发者对于设计真正可用的购物车系统仍然感到有很多的困难。
购物车系统第一步
如何设计一个购物车系统呢?在考虑这个问题之前不妨先想想从挑选产品放入购物车,到最后结账的环节中,可以切出哪些功能点方便规划数据库,我们随机可以察觉到有商品和购物车,而以下就是一个初步的案例分析图:
保留金额信息
研判一个购物车可以有多个产品,且一个产品放进多个购物车,而这样的设计图乍看完美却有个问题:试想当一个访客挑选了一样产品,并且放入购物车,这时如果该产品的价钱被后台管理员异动,那么在访客结账之前购物车中的商品价钱也需要异动吗?
如果这是被允许的,那么笔者可以在访客结账的前一秒,将价钱偷改为几百万(之后几年就是官司人生),于是我们需要新的设计避免这样的悲剧: