本文对blog项目的文件结构进行简单说明 app ---> 程序主目录 api-->测试中的api auth -->登录认证文件 main-->主入口文件 static--> 静态文件 template-->html 模板文件 migrations--> SQLAlchemy生成文件,用于数据迁移 test-->selenuim测试文件
创建flask实例:
加载需要加载的第三方插件,如csrf,bootstrap
app.__init__中设置blueprint注册所有的页面
其中static_folder指向的就是app下的static目录,在页面中用url_for()进行引用
auth蓝图创建(main蓝图相同)
包含auth包里面的所有模块(表单和试图) views中写页面中需要的一些后台函数
1、利用flask_login中的current_user判断用户是否登录(已登录current_user包含用户ID,利用hasattr函数进行判断,并跳转到指定页面)
2、form.validate_on_submit判断用户是否提交表单(也可以用methods中的post来判断)
3、登录认证过程,并根据情况返回不同的flash闪现消息,认证成功,跳转到指定页面
selenium 单元测试
调用的是Chrome浏览器进行测试,需要Chromedriver.exe,下载自行百度(下图是gif动画,貌似不能用*-*)
views模块中的代码大同小异,仅列举一个,后期对一些函数做单独的说明
第三弹:对jinja2 网页模板进行分析,使用bootstrap+wtf快速布局(待续)
第四弹,整个项目的总结以及扩展,qrcode等一些小工具的介绍(...)
用flask编写自己的博客(1) 项目源码地址:Github