flask项目1实战:1、项目准备(一)项目简介

在这里插入图片描述

(根据居然老师直播课内容整理)

一、项目介绍

  • 拿到一个项目后,第一件事是项目需求分析
  • 需求分析原因:
    • 可以整体的了解项目的业务流程和主要的业务需求。应该站在整个项目角度理解业务需求,以便更好协作开发。
    • 项目中,需求驱动开发。即开发人员需要以需求为目标来实现业务逻辑。
  • 需求分析方式:
    • 企业中,借助“产品原型图”分析需求。
    • 需求分析完后,前端按照产品原型图开发前端页面,后端开发对应的业务及响应处理。
  • 需求分析内容:

1、需求文档

  • 需求功能
  1. 主页
    1.1 最多5个房屋logo图片展示,点击可跳转至房屋详情页面
    1.2 提供登陆/注册入口,登陆后显示用户名,点击可跳转至个人中心
    1.3 用户可以选择城区、入住时间、离开时间等条件进行搜索
    1.4 城区的区域信息需动态加载

  2. 注册
    2.1 用户账号默认为手机号
    2.2 图片验证码正确后才能发送短信验证码
    2.3 短信验证码每60秒可发送一次
    2.4 每个条件出错时有相应错误提示

  3. 登陆
    3.1 用手机号与密码登陆
    3.2 错误时有相应提示

  4. 房屋列表页
    4.1 可根据入住离开时间、区域进行筛选,并可进行排序
    4.2 房屋信息分页加载
    4.3 区域信息动态加载
    4.4 筛选条件更新后,页面立即刷新

  5. 房屋详情页
    5.1 需展示的详细信息参考设计图
    5.2 提供预定入口
    5.3 若是房东本人查看房屋信息时,预定入口不显示

  6. 房屋预定
    6.1 由用户确定入住时间
    6.2 根据用户确定的入住离开时间实时显示合计天数与总金额

  7. 我的爱家
    7.1 显示个人头像、手机号、用户名(用户名未设置时为用户手机号)
    7.2 提供修改个人信息的入口
    7.3 提供作为房客下单的查询入口
    7.4 提供成为房东所需实名认证的入口
    7.5 提供作为房东发布房屋信息的入口
    7.6 提供作为房东查询客户订单的入口
    7.7 提供退出的入口

  8. 个人信息修改
    8.1 可以修改个人头像
    8.2 可以修改用户名
    8.3 登陆手机号不能修改
    8.4 上传头像与用户名分开保存
    8.5 上传新头像后页面理解显示新头像

  9. 我的订单(房客)
    9.1 按时间倒序显示订单信息
    9.2 订单完成后提供评价功能
    9.3 已评价的订单能看到评价信息
    9.4 被拒绝的订单能看到拒单原因

  10. 实名认证
    10.1 实名认证只可进行一次
    10.2 提交认证信息后再次进入只能查看信息,不能修改
    10.3 认证信息包含姓名与身份证号

  11. 我的房源
    11.1 未实名认证的用户不能发布新房源信息,需引导到实名认证页面
    11.2 按时间倒序显示已经发布的房屋信息
    11.3 点击房屋可以进入详情页面
    11.4 对实名认证的用户提供发布新房屋的入口

  12. 发布新房源
    12.1 需要用户填写全部房屋信息
    12.2 房屋的文字信息与图片分开操作

  13. 客户订单(房东)
    13.1 按时间倒序显示用户下的订单
    13.2 对于新订单提供接单与拒单的功能
    13.3 拒单必须填写拒单原因
    13.4 若客户进行了订单评价,需显示

  14. 退出
    14.1 提供退出功能

2. 项目主要页面介绍

2.1 主页

  • 5个房屋图片展示,即5个轮播图,点击后能跳转到房屋的详细页面
    • 用页面模拟手机页面
    • 详情页里也有抡播图,轮播该房间的图片,主页轮播随机轮播所有房间的图片
  • 提供注册、登录按钮, 成功登录后,显示用户名,点击可以进入个人中心
  • 可以选择城市、入住时间,可以点击搜索,搜索出来的是房间列表页面
    • 向下滑动,可以加载
  • 城区区域信息需要动态加载

2.2 登录&注册

2.2.1 注册

  • 注册使用手机号
  • 图片验证(动态加载图片)
  • 图片证确后,才能短信验证,要做限制,60秒发一次,有可能不会限制每天发送次数
  • 前端验证正确后,才能提交后台,后台还必须进行验证

2.2.2 登录

  • 与验证差不多

2.3 房屋列表

  • 可根据入住、离开时间和区域进行筛选,还需要按选择进行数据排序
  • 房屋页面需要分页加载,每次显示3个,下滑时加载
  • 区域信息变更后,也需重新加载
  • 筛选条件更新后,需新加载

2.4 房屋详情页面

  • 房间详细的图片及相关信息
  • 提供预订按钮
  • 房东查看自己的房间时,预订入口不显示

2.5 房屋预订

  • 由房客确定入住时间
  • 根据入住、离开时间,计算预计入住天数 和 总金额

2.6 我爱我家

  • 显示用户信息
  • 提供个人信息修改入口
  • 提供房客下单信息查询
  • 提供…

2.7 个人信息

  • 手机号不能修改

2.8 我的订单

  • 按时间倒序显示订单信息
  • 提供评价及评价信息
  • 提供被拒理由(房东有权拒绝你的预订)

2.9 实名认证

  • 实名认证只能认证一次
  • 个人不能做这个,必须对接公安系统(可以做个假的),系统上线后公司可以到公安申请接口对接

2.10 我的房源

  • 未实名认证的客东不能发布房源
  • 按发布时间倒序显示已发布房源
  • 提供进入房屋详细信息的页面
  • 提供认证客东的新房源发布入口

2.11 发布新房源

提供图片上传、及相关可选项

2.12 客户订单

2.14 退出

  • 提供退出功能

3归纳项目主要模块

  • 为了方便项目管理及多人协同开发,我们根据需求将功能划分为不同的模块。
    将来在项目中,每个模块都会对应一个子应用进行管理和解耦。
模块 功能
验证 图形验证、短信验证
用户 注册、登录、用户中心
首页广告 首页广告,城区信息
房源 房源、celery、房屋列表
订单 确认订单、提交订单
支付 支付宝支付、订单商品评价

二、项目架构设计

1、项目开发模式

选项 技术选型
开发模式 前后端分离
后端框架 Flask
前端框架 HTML、CSS、JS、JQ
  • 说明

    • 前后端不分离的开发模式,是为了提高搜索引擎排名,即SEO。特别是首页,详情页和列表页。
    • 页面需要局部刷新:我们会选择使用AJAX来实现。
  • 开发模式 详见:前后端分离 与 前后端不分离

猜你喜欢

转载自blog.csdn.net/laoluobo76/article/details/109768991