穆琪的博客

一个程序员的自传

flask-sqlalchemy中default和server_default

flask-sqlalchemy中default和server_default
一、背景在项目中,遇到了使用flask-sqlalchemy设定字段的默认值的问题,查找文档后发现可以通过设置default来解决,可是设置default后发现只在应用内生效,在navicat的界面中查看sql语句并没有设置。后来使用server_default对字段属性进行了设置。二、分析一开始使用的是defaultclassTest(db.Model:__tablename__='test'&nb...
继续阅读

Python中XSS白名单过滤的实现

在Web开发中很多地方需要用户输入富文本但又要确保输入的这些内容绝对安全不会引发XSS漏洞,那么最常用的技术就是白名单技术。白名单的通常做法都是构建一个允许使用的标签及对应属性的列表,然后对用户输入的HTML文本进行解析,解析出的tag及属性去白名单中进行查找,如果对应上了,那么就保留下来,没有对应上就进行移除。白名单的结构都是这样一个层次:允许的tag->允许的属性->允许的属性值。拿img标签来举例,我们允许在博客中插入图片标签,那么img标...
继续阅读

表单 Flask-WTF 校验器

1wtforms内置的校验器Classwtforms.validators.DataRequired(message=None此验证器将会检测field是否输入了数值,实际上是进行了iffield.data操作。并且,如数数据是一个字符串,那么只包含空格的字符串将会被认为是False。参数:message-当验证失败时返回的错误消息数:message-当验证失败时返回的错误消息classwtforms.validators.Email...
继续阅读

Flask学习记录之Flask-SQLAlchemy

Flask-SQLAlchemy库让flask更方便的使用SQLALchemy,是一个强大的关系形数据库框架,既可以使用orm方式操作数据库,也可以使用原始的SQL命令.Flask-Migrate是一个数据迁移框架,需要通过Flask-script库来操作.一.配置Flask-SQLAlchemy程序使用的数据库地址需要配置在SQLALCHEMY_DATABASE_URI中,SQLALchemy支持多种数据库,配置格式如下:...
继续阅读

使用Flask-Socketio进行WebSocket通信

使用Flask-Socketio进行WebSocket通信
使用Flask-Socketio进行WebSocket通信需要写一个Web页面监控后台程序的运行状态,一开始的想法是将后台程序的log保存到redis,再从Web端使用ajax定时获取redis里的数据。还没开始撸代码就觉得这种方法有问题,一定有更优雅的方法实现。HTTP协议都需要从客户端发起,服务器应答。而这里的情况是客户端并不知道后台程序的状态什么时候发生改变,所以需要让服务器可以主动地发送数据给客户端。google一圈后发现WebSocket可以完美满足要求,所...
继续阅读

python之操作kafka

kafka简介(摘自百度百科)简介:kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是...
继续阅读

Elasticsearch_dsl(python)的搜索|查询|聚合操作实例

#相关导入importtimefromelasticsearchimportElasticsearchfromelasticsearch_dslimportSearch#创建相关实例es=Elasticsearch(#using参数是指定Elasticsearch实例对象,index指定索引,可以缩小范围,index接受一个列表作为多个索引,且也可以用正则表示符合某种规则的索引都可以被索引,如index=["bank","banner...
继续阅读

flask模块化组件和蓝图实例

flask模块化组件和蓝图实例
一、创建一个python包app,修改其中的__init__.py:fromflaskimportFlaskimportsysreload(syssys.setdefaultencoding('utf8'app=Flask(__name__二、将根目录下的的项目名.py修改:fromappimportappfromapp.deptimportdept...
继续阅读

链接静态资源

链接静态资源˃˃˃fromtestimportapp˃˃˃app.url_mapMap([<Rule'/user'(HEAD,OPTIONS,GET-˃user˃,<Rule'/'(HEAD,OPTIONS,GET-˃index˃,<Rule'/static/<filename˃'(HEAD,OPTIONS,GET-˃static˃,<Rule'/user/<n...
继续阅读

数据模型的外键关系

SQL数据库中,两个表之间的关系表现为外键.在SQLAlchemy的模型中,也可以表现这种模型之间的关联关系.classRole(db.Model:__tablename__='roles'id=db.Column(db.Integer,primary_key=Truename=db.Column(db.String(64,unique=True...
继续阅读
搜索
«   2020年4月   »
12345
6789101112
13141516171819
20212223242526
27282930
标签列表
站点信息
  • 文章总数:136
  • 页面总数:0
  • 分类总数:12
  • 标签总数:2
  • 评论总数:0
  • 浏览总数:12791
友情链接
© 鲁ICP备18041558号
Powered by Z-BlogPHP & Yiwuku.com