
Flask框架
文章平均质量分 70
gymaisyl
这个作者很懒,什么都没留下…
展开
-
Flask-SQLAlchemy配置键
官方文档解释如下:http://www.pythondoc.com/flask-sqlalchemy/config.html#id2数据库连接:SQLALCHEMY_DATABASE_URI用于配置连接数据库的配置项,针对不同的数据库,其相对的配置方式如下:MySQLmysql直接连接以及使用python连接mysql的第三方库#default'mysql://username:password@server/db'#mysqlclient (MySQL-Python的维护分支)'m原创 2020-09-01 15:05:51 · 828 阅读 · 0 评论 -
Flask-Login使用详解
先看一下flask-login模块的整体架构基础的信息和全局配置这里就不多说,需要用到再斟酌也可以的。这里也是针对每个模块较为常用的进行解释说明,后期再使用过程中遇到会进行补充。Login_ManagerLoginManager是一个类,有多个方法和属性;此类初始化的对象用于保存用于登录的设置。实例:class:LoginManager * *不绑定到特定应用程序,因此可以在代码的主体...原创 2019-01-28 10:00:46 · 25386 阅读 · 4 评论 -
flask ORM查询集(query)的处理方法:
filter,filter_by,order_by,group_by,having,union_all,union,distinct,limit,offset # filter: 过滤; 语法:session.query(MyClass).filter(MyClass.name == 'some name') result0 = db.session.query(Protocols....原创 2019-07-22 10:18:33 · 6187 阅读 · 0 评论 -
sqlalchemy-运算符like,notlike,in_,notin_,is_,isnot,startswith,endswith,contains,desc,asc,between,distin
like,notlike,in_,notin_,is_,isnot,startswith,endswith,contains,desc,asc,between,distinct本次数据查询参考模型类和数据如下:(Flask环境)class Protocols(db.Model) id = db.Column(db.Integer, primary_key=True, autoincremen...原创 2019-07-20 16:52:08 · 12507 阅读 · 0 评论 -
sqlalchemy中,使用concat(),concat_ws(),group_concat()
原生sql语句,参考:https://blog.youkuaiyun.com/gymaisyl/article/details/96478282原始数据库数据:concat()db.session.query(func.concat(Protocols.id, Protocols.protocolName, Protocols.parent_protocol)).all()结果:[('1ssht...原创 2019-07-20 12:28:51 · 5207 阅读 · 2 评论 -
Flask中使用filter过滤,不在某个范围内
参考代码如下try: objects = User.query.filter(~User.username.in_(["admin", "operator", "auditor"])).order_by( User.create_time.desc()) count = objects.count() ...原创 2019-04-01 11:16:43 · 906 阅读 · 1 评论 -
Flask中,模型类字段的数据类型修改无法识别,compare_type=True
需要将Float类型转换成DECIMAL类型的问题,但是一开始设计表是设 计成了Float类型,因此记录下flaskmigrate更改表字段类型的方式。 alembic支持检测字段长度、类型改变,不过它不是默认的,需要配置; 找到migrations/env.py文件,在run_migrations_online函数加入内容: compare_type=True, 修改后如下 co...原创 2019-04-01 09:47:06 · 1190 阅读 · 0 评论 -
Flask中存储数据保留精度DECIMAL
toServerBytes = db.Column(db.DECIMAL(20, 5), comment="到服务端流量")toClientBytes = db.Column(db.DECIMAL(20, 5), comment="到客户端流量")在Flask中,想要存储有精度的数据*(保留几位小数),可以使用DECIMAL,而不是Float,亲测Float不起作用DECIMAL(20, ...原创 2019-03-29 17:17:31 · 2605 阅读 · 1 评论 -
sqlalchemy中多对多关系级联删除的问题
版本一①多对多表的建立:sqlalchemy中的多对多关系,在这里是使用双向关联的方式,双向关联采用的是 backref进行反向双向关系的联系from app import db"""第三张表"""TC = db.Table("TC", db.Column("C_id", db.Integer, db.ForeignKey("classes.id")原创 2019-03-14 16:53:49 · 3612 阅读 · 0 评论 -
Flask中一对多,删除一的时候,多也同时删除
Flask中使用ORM时候,如果删除了父记录希望级联删除字对象的话,需要在反向关系中添加cascade='all, delete-orphan'参数在这里假设一个person对应多个books,实列如下:class Person(db.Model) : __tablename__ = 'persons' id = db.Column(db.Integer, primary_k...原创 2019-03-01 17:15:21 · 2052 阅读 · 1 评论 -
flask.ctx -- Flask上下文
class AppContext(object): """应用程序上下文将应用程序对象隐式绑定到当前线程或greenlet, 类似于:class:`RequestContext`绑定请求信息。 如果创建了请求上下文但应用程序不是,则也会隐式创建应用程序上下文 在个人应用程序上下文之上。 """ def __init__(self, app): ...原创 2019-01-31 13:44:54 · 586 阅读 · 0 评论 -
Flask 中接收与发送json 方式详解
一、Flask中json数据的接收1、利用flask的request.form.get()方法from flask import Flaskfrom flask import jsonifyfrom flask import requestimport json @app.route("/login", methods=['POST'])def login(): data_ =...原创 2019-01-25 09:28:43 · 35109 阅读 · 10 评论 -
Flask扩展之 【Flask-Migrate】数据库的迁移
数据库迁移:在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库。最直接的方式就是删除旧表,但这样会丢失数据。更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化,然后把变动应用到数据库中。数据库的迁移操作,是基于Flask-SQLAlchemy的,相关操作可参考:Flask-SQLAlchemy ,在flask中通过ORM方式来操作数据库1.安装: 扩展的万...原创 2018-10-24 19:47:29 · 574 阅读 · 0 评论 -
Flask扩展之 【Flask-SQLAlchemy】 关于在flask中通过ORM方式来操作数据库 01
Flask-SQLAlchemy 操作步骤【入门简易版】在介绍Flask-SQLAlchemy之前,先说一下ORM的概念:ORM:ORM 全拼 【Object-Relation Mapping】.中文意为 【对象-关系映射】.主要实现模型对象到关系数据库数据的映射.也就是说,我们可以不需要直接写原生SQL语句,通过调用对象方法的方式,对数据库进行增删改查的操作;呐,ORM有下面的优点:...原创 2018-10-24 18:09:08 · 713 阅读 · 0 评论 -
Flask-装饰器routing路由的具体实现过程
Werkzeug库的routing模块是用来解析url请求的,不同的url对应不同的视图函数,而routing模块的作用就是:对请求信息的URL进行解析,匹配到URL对应的视图函数,执行该函数以此生成一个响应信息。Werkzeug库的 routing 模块中有以下几个部分:Rule类:路由url和视图函数的对应关系在执行print(app.url_map) 后,在终端上会看到下面所示的代码...原创 2018-10-15 21:07:58 · 411 阅读 · 0 评论 -
Flask扩展之【Flask-script】--通过命令行运行文件的插件
Flask-script:通过使用Flask-Script扩展,我们可以在Flask服务器启动的时候,通过命令行的方式传入参数。而不仅仅通过app.run()方法中传参。可以理解为,通过命令行运行的插件实现过程:在虚拟环境下安装flask-script扩展:pip install flask-script安装案例如下(在pycharm中的Terninal中进行的操作):安装成...原创 2018-10-15 19:23:23 · 985 阅读 · 0 评论 -
Flask自定义转换器
Flask框架中自带的转换器:DEFAULT_CONVERTERS = { 'default': UnicodeConverter, 'string': UnicodeConverter, 'any': AnyConverter, 'path': PathConverter,...原创 2018-10-14 22:19:53 · 487 阅读 · 0 评论