flask.ext.sqlalchemy.Model类介绍

Model类是构建数据库类的基类,其属性有:

_bind_key_:可选地声明要使用的bind。None为默认的bind

query=None:是query_class的实例,可以用来查询Model类实例的数据库。

query_class:query是query_class的实例,默认是BaseQuery(见下文)。

class flask.ext.sqlalchemy.BaseQuery(entities,session=None)的属性

all():把此查询都的结果返回为一个列表。这会执行底层查询。

order_by(*criterion):对查应用一个或更多ORDER BY约束,并返回新的结果查询。

limit(limit):对应用一个LIMIT,并返回新的结果查询

offset(offset):对查询应用一个OFFSET,并返回新的结果查询。

first():返回此查询中的第一个结果,如果结果不包含任何行,返回None。这会执行底层查询。

first_or_404:与first()类似,但当结果不存在时,出现404错误。

get(ident):根据给定的主键,返回实例;如果不存在的话,返回None. ident可以是单个的数字或一个元组。元组的话应该是对应于复合主键的情况。

如:

my_user=session.query(User).get(5)

some_object=session.query(VersionFoo).get((5,10))

get_or_404(ident):与get()类似,只是当请求的实体不存在时,出现404错误。

paginate(page,per_page=20,error_out=True):用于分页。从第page页返回per_page个条目。如果没有查询到条目的话,返回404错误。当设置error_out为False时,便不会出现上述行为。返回Pagination对象(见下文)。

class flask.ext.sqlalchemy.Pagination(query,page,per_age,total,items)

has_next:如果下一页存在的话,返回True

has_pre:如果前一页存在的话,返回True

items=None:当前页中的条目

iter_pages(left_edge=2,left_current=2,right_current=5,right_edge=2):遍历pagination中的页数。

next(error_out=False):返回下一页的Pagination类

next_num:下一个的数量

page=None:目前的页数

pages:总页数

per_age=None:在一页中所呈现的条目的数量

prev(error_out=False):返回前一页的Pagination对象

prev_num:下一页的数量

query=None:用于创建pagination对象的无限制的查询对象

total=None:匹配该查询的总共条目数。

flask.ext.sqlalchemy.get_debug_queries():

在调试模式下,Flask-SQLAlchemy将会记录所有的SQL查询。当请求出错或进行单元测试时,这些信息非常有用。将SQLALCHEMY_RECORD_QUERIES设置为True时,将关闭数据库的调试模式。

返回值是一个元组名列表,有如下属性:

statement:SQL状态

parameters: SQL statement参数

start_time/end_time:查询的开始时间和结束时间

duration:查询的持续时间

context:A string giving a rough estimation of where in your application query was issued.  The exact format is undefined so don’t try to reconstruct filename or function name.

原API:http://docs.jinkan.org/docs/flask-sqlalchemy/api.html#flask.ext.sqlalchemy.Model

转载于:https://my.oschina.net/935572630/blog/367838

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值