Flask入门的第一个项目进阶版

前言:

这次版本增长【一对多】数据库关系和动态路由设置。git


1、数据库设计

environments表与variable1表的关系为:一对多。variable1.env_id设置为外键,与environments表创建关系。github

 
 
 

2、创建数据库模型

以下图所示,Variable模型中的env_id列被定义为外键,就是这个外键创建起了关系。传给db.ForeignKey()的参数'environments.id'代表,这列的值是environments表中行的id值。 数据库


3、多表查询 

一、查找environments表中的id为1,对应的全部Variable数据app

Variable.query.filter_by(env_id=1).join(Environments, Variable.env_id == Environments.id)数据库设计

二、查找environments表中的id为1,对应的一条Variable.id 为2的Variable数据函数

Variable.query.filter_by(env_id=1,id=2).join(Environments,Variable.env_id == Environments.id).first_or_404()url


4、匹配动态url

在Flask中,能够将URL中的可变部分使用一对小括号<>声明为变量, 并为视图函数声明同名的参数:设计

@app.route('/delete/<int:id>')orm

@app.route('/change/<int:env_id>/<int:id>',methods=['GET','POST'])blog

endpoint的映射包含变量: 

redirect(url_for('show_variable_list',_external=True,env_id=env_id))


5、开源代码

https://github.com/wangxiaoxi3/Flask_test_1


以上,但愿能对你有所帮助~~欢迎交流,共同进步~~

相关文章
相关标签/搜索