第二阶段将跟随一个网站开发的完整过程,一方面系统化开发整合知识,另一方面查缺补漏。
网站开发流程为:
需求分析→设计说明→代码编写→程序测试→软件交付→客户验收→后期维护。
1.商城的设计说明与配置
1.1需求分析
不断与客户交流,并将交流结果的Demo发给客户,直到客户满意为止。
(1)商品搜索功能;
(2)结果可以根据销量、价格、上架时间和收藏数量排序;
(3)商品详情应有尺寸、原价、活动价、图片展示、收藏功能和购买功能;
(4)用户购买后看到订单信息,订单信息包括支付金额、购买时间和订单状态;
(5)商品购买支持在线支付,如支付宝或微信;
1.2设计说明
根据客户需求,进行网站页面的功能设计。
网站分为六个页面:网站首页、商品列表页、商品详情页、购物车页面、个人中心页面、用户登录注册页面。
各页面能实现以下功能:
(1)网站首页:
①导航:包括首页、所有商品、购物车和个人中心的地址链接。所有页面均有。
②商品搜索:根据关键字列出商品列表,如果没输入关键字则直接跳往商品列表页面。所有页面均有。
③广告轮播:以图片形式轮播商品,用户广告宣传。
④商品热销:分为今日必抢和分类热销。今日必抢选取所有商品销量前十;分类热销选取各类商品销量前五
⑤网站尾部:说明网站的基本信息,如备案信息、售后服务、联系我们等,所有页面均有。
(2)商品列表页:
①商品分类栏:列出商品种类,包括一级分类和二级分类。
②商品列表信息:展示商品信息(图片、名称、价格),并设置分页功能,每页显示6件商品。
(3)商品详情页:
①商品基本信息:参考淘宝京东等。包含了商品规格、名称、价格、主图、购买数量、收藏按钮和购买按钮。购买按钮将商品添加至购物车。
(4)购物车页面:
①购买费用核算:可以编辑购买数量、删除商品、选择购买商品,结算按钮自动跳到支付页面。
(5)个人中心页:
①用户基本信息:用户头像、名称、登录时间,还有两个按钮:我的购物车和退出登录;
②订单信息:以列表格式展示所有订单,包含了订单编号、价格、购买时间和状态。
(6)用户登录注册页面:
如果账号已存在,则对用户账号密码进行验证,如果用户不存在,则对当前账号密码进行注册处理。
使用session记录登录信息,如果用户未登录则打开其他页面时自动跳转至登录页面。
接下来根据功能设计每个数据表的字段(参考后面的第三部分)
1.3搭建项目开发环境
(1)创建项目shop;
(2)创建三个app:index、commodity、shopper:
(3)添加文件夹media(媒体资源)、pstatic(静态资源)和templates(模板文件),并在这些文件夹中添加前端提供的模板和资源:
1.4项目的功能配置(settings.py)
在settings.py中配置相应的信息。
(1)添加项目应用(App)
链接自己创建的三个App:
(2)设置模板信息(Templates)
添加模板路径:
(3)添加中间件(Middleware)
中间件在Django处理用户请求前,首先进行处理。
将中间件设置为中文:
(4)配置数据库
(5)配置静态资源(pstatic)
静态资源(pstatic)存放模板信息,默认在各App的目录下找,现在将路径设置为shop项目下:
(6)配置媒体资源(media)
媒体资源存放用户数据:
2.商城网址的规划与设计
2.1设置路由分发
默认下,路由地址均写在shop项目同名文件夹下的urls.py文件中,路由地址越来越多,臃肿不堪,会难以管理。因此在各项目应用App下设置本应用的urls,而项目url用于分发这些各App的urls:
2.2设置商城的路由地址
(1)index的urls.py:
(2)commodity:
(3)shopper:
【注】在路由末端设置.html是伪静态URL技术,用于搜索引擎的爬取。此外也是路由变量的终止符,否则路由变量输入无限长也能访问。