1. 需求
画了一个粗略的导图,尽量实现图中的所有功能吧。
主要分两块,一是后台管理模块,二是前台显示模块。
Micro Blog Mind
2. 技术栈
- Python
- Flask
采用Flask作为web框架。其扩展性极强,轻量,插件非常多,并且网上的文档很齐全,适合我这样的新手来操作。
- Flask-Script
采用Flask-Script来代替原生启动管理,可以方便的利用命令的形式来操作数据库,运行服务器。
- Flask-Migrate
数据库迁移,更新工具。
- Flask-Bootstrap
用来渲染前端页面。
- Flask-WTF
表单数据处理。同时,可以处理CSRF(Cross-Site Rrequest Forgery,跨站请求伪造),安全性好。
- Flask-SQLAlchemy
管理数据库,提供ORM。
- Flask-Login
提供了一些通用的用户管理。
- Blueprint
这个不像前面都是一些Flask的插件,而是直接在Flask框架内实现的。用于实现应用的模块化,将后台管理模块和显示模块分离开。
- MySQL
MySQL可以用在大型的生产环境中,提供了很好用的命令行,并且我比较熟悉。 - Bootstrap
前端无能,Bootstrap模板能大大减少前端的开发工作。
以上就是一些会用到的东西。下面在具体开发中,会结合例子来讲解所用技术的使用方法。
3. 项目文件架构
建立文件夹如下(Windows的tree命令感觉有点丑):
D:\micro-blog>tree /F
卷 project 的文件夹 PATH 列表
D:.
│ config.py #存放一些配置,比如数据库地址,log文件管理
│ manage.py #项目入口
│ README.md
│
└─app
│ models.py #ORM
│ __init__.py #初始化app
│
├─admin #admin蓝图文件夹
├─main #main蓝图文件夹
└─templates #存放静态文件,比如前端模板和js
网友评论