摘要: # WTForms笔记:这个库一般有两个作用。第一个就是做表单验证,把用户提交上来的数据进行验证是否合法。第二个就是做模版渲染。 ### 做表单验证:1. 自定义一个表单类,继承自wtforms.Form类。2. 定义好需要验证的字段,字段的名字必须和模版中那些需要验证的input标签的name属性 阅读全文
posted @ 2018-04-16 21:52 小小易拉罐 阅读(320) 评论(0) 推荐(0) 编辑
摘要: # flask_migrate笔记:在实际的开发环境中,经常会发生数据库修改的行为。一般我们修改数据库不会直接手动的去修改,而是去修改ORM对应的模型,然后再把模型映射到数据库中。这时候如果有一个工具能专门做这种事情,就显得非常有用了,而flask-migrate就是做这个事情的。flask-mig 阅读全文
posted @ 2018-04-15 17:22 小小易拉罐 阅读(327) 评论(0) 推荐(0) 编辑
摘要: ### 安装:```shellpip install flask-sqlalchemy``` ### 数据库连接:1. 跟sqlalchemy一样,定义好数据库连接字符串DB_URI。2. 将这个定义好的数据库连接字符串DB_URI,通过`SQLALCHEMY_DATABASE_URI`这个键放到` 阅读全文
posted @ 2018-04-11 23:39 小小易拉罐 阅读(318) 评论(0) 推荐(0) 编辑
摘要: ### subquery:子查询可以让多个查询变成一个查询,只要查找一次数据库,性能相对来讲更加高效一点。不用写多个sql语句就可以实现一些复杂的查询。那么在sqlalchemy中,要实现一个子查询,应该使用以下几个步骤:1. 将子查询按照传统的方式写好查询代码,然后在`query`对象后面执行`s 阅读全文
posted @ 2018-04-11 23:02 小小易拉罐 阅读(5318) 评论(0) 推荐(0) 编辑
摘要: ### join:1. join分为left join(左外连接)和right join(右外连接)以及内连接(等值连接)。2. 参考的网页:http://www.jb51.net/article/15386.htm3. 在sqlalchemy中,使用join来完成内连接。在写join的时候,如果不 阅读全文
posted @ 2018-04-11 22:44 小小易拉罐 阅读(4379) 评论(0) 推荐(1) 编辑
摘要: ### group_by:根据某个字段进行分组。比如想要根据性别进行分组,来统计每个分组分别有多少人 ### having: having是对查找结果进一步过滤。比如只想要看未成年人的数量,那么可以首先对年龄进行分组统计人数,然后再对分组进行having过滤。示例代码如下: 阅读全文
posted @ 2018-04-11 22:24 小小易拉罐 阅读(2947) 评论(0) 推荐(0) 编辑
摘要: ### 懒加载:在一对多,或者多对多的时候,如果想要获取多的这一部分的数据的时候,往往能通过一个属性就可以全部获取了。比如有一个作者,想要或者这个作者的所有文章,那么可以通过user.articles就可以获取所有的。但有时候我们不想获取所有的数据,比如只想获取这个作者今天发表的文章,那么这时候我们 阅读全文
posted @ 2018-04-10 23:13 小小易拉罐 阅读(586) 评论(0) 推荐(0) 编辑
摘要: ### limit、offset和切片操作:1. limit:可以限制每次查询的时候只查询几条数据。2. offset:可以限制查找数据的时候过滤掉前面多少条。3. 切片:可以对Query对象使用切片操作,来获取想要的数据。可以使用`slice(start,stop)`方法来做切片操作。也可以使用` 阅读全文
posted @ 2018-04-10 22:50 小小易拉罐 阅读(7455) 评论(0) 推荐(0) 编辑
摘要: ### 排序:1. order_by:可以指定根据这个表中的某个字段进行排序,如果在前面加了一个-,代表的是降序排序。2. 在模型定义的时候指定默认排序:有些时候,不想每次在查询的时候都指定排序的方式,可以在定义模型的时候就指定排序的方式。有以下两种方式: * relationship的order_ 阅读全文
posted @ 2018-04-10 22:36 小小易拉罐 阅读(11200) 评论(0) 推荐(0) 编辑
摘要: ### 一对一的关系:在sqlalchemy中,如果想要将两个模型映射成一对一的关系,那么应该在父模型中,指定引用的时候,要传递一个`uselist=False`这个参数进去。就是告诉父模型,以后引用这个从模型的时候,不再是一个列表了,而是一个对象了。示例代码如下: 阅读全文
posted @ 2018-03-28 22:34 小小易拉罐 阅读(229) 评论(0) 推荐(0) 编辑