/Information

基于Flask的一个小项目.

Primary LanguagePython

提示:
    1. 项目采用前后端不分离的模式开发
    2. 界面局部刷新使用ajax请求接口
    3. 主业务逻辑目录参照Django

技术实现:
    1. 基于python3.6 + Flask框架
    2. 数据存储使用MySQL + Redis
    3. 第三方扩展:
        文件存储平台: 七牛云
        云通信: 短信验证码平台
    4. 部署:
        基于win10系统,使用Gunicorn + Nginx

功能模块:
    1. 新闻模块
        - 首页新闻列表
        - 新闻详情
    2. 用户模块
        - 登录,注册,个人信息修改
        - 新闻收藏,发布
    3. 后台管理

具体需求:
    1. 首页
        - 根据分类进行新闻列表展示
        - 上拉加载更多数据
        - 点击新窗口跳转到新闻详情
        - 顶部显示用户登录信息,未登录显示登录注册按钮
        - 右侧显示新闻点击排行
    2. 注册
        - 账号为手机号
        - 图片验证码正确才能发送短信验证码
        - 短信验证码60秒倒计时
    3. 登录
        - 手机号和密码登录
        - 错误有提示
    4. 新闻详情
        - 新闻内容html展示
        - 用户点击收藏可收藏当前新闻
        - 根据当前登录账号显示收藏状态
        - 用户可以评论该新闻
        - 其他用户可以恢复某一条评论
        - 右侧显示新闻点击排行
        - 若当前新闻由某具体作者发布,右侧显示作者具体信息
    5. 个人中心
        - 显示头像,昵称(未设置以手机号代替)
        - 提供我的关注,我的粉丝入口
        - 提供修改基本资料入口
        - 提供头像设置入口
        - 提供密码修改入口
        - 提供我的收藏入口
        - 提供新闻发布入口
        - 提供我发布的新闻入口
    6. 个人信息修改
        - 可修改用户名
        - 可修改个人头像
        - 登录的手机号不能修改
        - 上传新头像后页面立即显示新头像
    7. 我的关注
        - 分页的形式展示数据
        - 每页展示4个关注的用户
        - 可以在当前页面取消关注
        - 点击关注用户的昵称可跳转至用户信息页面
    8. 我的收藏
        - 分页的形式展示数据
        - 按收藏时间倒序排序
    9. 发布新闻
        - 可以发布新闻
        - 可以将新闻页的图片上传至七牛云
        - 发布完新闻跳转至我的新闻列表页面
    10. 我发布的新闻
        - 按照发布顺序排列,最近发布的在最前
        - 显示当前我发布新闻的新闻状态
        - 点击审核通过的新闻直接跳转到新闻详情页
        - 审核中无法点击
        - 未审核通过的新闻可以重新发布
        - 点击审核失败的新闻跳转到新闻发布页面,并填充具体新闻内容
    11. 退出
        - 提供退出功能
    12. 后台登录
        - 提供后台登录功能
        - 如果当前用户登录,进入登录页面后直接跳转到后台
    13. 后台用户统计
        - 登录到后台界面之后展示用户统计界面
        - 显示用户总人数
        - 展示当前月用户新增人数
        - 展示当前日新增数
    14. 后台-用户列表
        - 按注册时间排序用户列表
        - 显示用户注册时间
        - 显示用户上传登录时间
    15. 后台-新闻审核
        - 展示待审核新闻内容
        - 点击进入新闻审核界面
        - 可以对新闻进行审核
        - 审核不通过,要有具体原因
    16. 新闻板式编辑
        - 进入默认展示所有新闻数据
        - 可以根据新闻标题搜索新闻
    17. 新闻分类管理
        - 展示所有分类列表
        - 可以添加,修改分类

设计模式:

.gitkeep作用:
    使git可以提交空文件夹,类似占位符的概念