用flask编写本身的博客(2)

本文对blog项目的文件结构进行简单说明
app ---> 程序主目录
api-->测试中的api
auth -->登陆认证文件
main-->主入口文件
static--> 静态文件
template-->html 模板文件
migrations--> SQLAlchemy生成文件,用于数据迁移
test-->selenuim测试文件html

用flask编写本身的博客(2)

建立flask实例:

用flask编写本身的博客(2)
加载须要加载的第三方插件,如csrf,bootstrapgit


app.init中设置blueprint注册全部的页面

用flask编写本身的博客(2)

其中static_folder指向的就是app下的static目录,在页面中用url_for()进行引用github

auth蓝图建立(main蓝图相同)

用flask编写本身的博客(2)
包含auth包里面的全部模块(表单和试图)
用flask编写本身的博客(2)
views中写页面中须要的一些后台函数
用flask编写本身的博客(2)flask

一、利用flask_login中的current_user判断用户是否登陆(已登陆current_user包含用户ID,利用hasattr函数进行判断,并跳转到指定页面)

二、form.validate_on_submit判断用户是否提交表单(也能够用methods中的post来判断)

三、登陆认证过程,并根据状况返回不一样的flash闪现消息,认证成功,跳转到指定页面

selenium 单元测试

调用的是Chrome浏览器进行测试,须要Chromedriver.exe,下载自行百度(下图是gif动画,貌似不能用-bootstrap

用flask编写本身的博客(2)
用flask编写本身的博客(2)

views模块中的代码大同小异,仅列举一个,后期对一些函数作单独的说明api

第三弹:对jinja2 网页模板进行分析,使用bootstrap+wtf快速布局(待续)浏览器

第四弹,整个项目的总结以及扩展,qrcode等一些小工具的介绍(...)app

用flask编写本身的博客(1)
项目源码地址:Githubide

相关文章
相关标签/搜索