Flask
文章平均质量分 52
zy_whynot
这个作者很懒,什么都没留下…
展开
-
Flask用户登录flask-login
flask-login登录的并保持状态:1、登录:用户提交用户名和密码;2、验证并建立会话:服务器验证密码,验证通过建立会话(使用session保存user_id),将session_id放到响应的cookie中;3、再次登录:cookie会自动携带session_id,服务器根据session_id对应的session判断用户是否登录。参考资料:用户登录 Flask-Login...转载 2020-05-09 16:36:12 · 642 阅读 · 0 评论 -
基于 db.session 进行查询
基于 db.session 进行查询(适用于多表查询)基本语法:db.session.query(Models1).filter()详细参考资料:flask的ORM操作 Flask-SQLAlchemy 中多表链接查询test= db.session.query("name from student where sys_param_key='ccb_test_scope'").all()[...转载 2020-04-28 22:55:53 · 9603 阅读 · 0 评论 -
Flask-wtf + Flask-bootstrap编写漂亮表单
看到一篇好的文章,记录下来:Flask-wtf + Flask-bootstrap转载 2020-04-28 22:16:06 · 640 阅读 · 0 评论 -
flask中session保持会话状态原理
拿最常见的保持用户登录状态举例:1、用户登录成功用session记录用户信息(比如user_id)保存在服务器,同时生成一个唯一的标识符(session_id)用来标识用户的身份,将其保存在响应对象的cookie中;2、当第二次请求时,解析cookie中的标识符,拿到标识符后去session找到对应的用户的信息。3、找到了则说明用户已登录,否则说明用户未登录。详情可参考:Flask中ses...转载 2020-03-28 18:48:09 · 652 阅读 · 0 评论 -
flask中的csrf防御
flask中的csrf防御机制两种方式:方式一:1、在客户端向后端请求界面数据的时候,后端会往响应中的 cookie 中设置 csrf_token 的值2、在 Form 表单中添加一个隐藏的的字段,值也是 csrf_token3、在用户点击提交的时候,会带上这两个值向后台发起请求4、后端接受到请求,以会以下几件事件:(1)从 cookie中取出 csrf_token(2)从 表单数......转载 2020-03-25 00:45:03 · 776 阅读 · 1 评论 -
Flask框架中密码的加盐哈希加密和验证
Flask框架中密码的加盐哈希加密和验证功能的用法详解核心:generate_password_hash:是一个密码加盐哈希函数,生成的哈希值可通过check_password_hash:函数用于验证经过generate_password_hash哈希的密码。若密码匹配,则返回真,否则返回假。详情可参考上面的链接...转载 2020-03-25 00:28:25 · 560 阅读 · 0 评论 -
flask_wtf表单
资料一资料二资料三记录一下,有时间回来总结。转载 2020-03-16 00:36:05 · 177 阅读 · 0 评论 -
flask-wtf中SelectMultipleField结合select2插件实现多选下拉列表框
参考资料SelectMultipleField + select2 实现多选下拉列表框转载 2020-03-11 01:42:45 · 1788 阅读 · 0 评论 -
解决sqlalchemy.exc.ProgrammingError: (pymysql.err.ProgrammingError) (1064, "You have an error in your
报错如下:sqlalchemy.exc.ProgrammingError: (pymysql.err.ProgrammingError) (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax ...原创 2020-03-10 00:44:51 · 7576 阅读 · 0 评论 -
flask中多对多关系 主从表的增删改查
模型# 学生和课程多对多class Student(db.Model): __tablename__ = "students" id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(64), unique=True) relate_courses = db.relatio...原创 2020-03-09 22:05:49 · 758 阅读 · 0 评论 -
获取ImmutableMultiDict嵌套字典的值和解决400状态码的问题
解决方案:1、解决字典嵌套,把原来ajax中的对对象直接改成json字符串;比如我的:data = {" name" : “张三”, “age”: 19};JSON.stringify(data) ——>data = {" name" : “张三”, “age”: 19};2、在获取参数后使用to_dict()方法把ImmutableMultiDict编程dictrequest....原创 2020-02-24 00:44:31 · 4668 阅读 · 0 评论 -
pip通过requirement批量下载安装包
有时候为了配置新的开发环境,通过pip install 包名 一个一个安装太慢了,可以使用命令:pip install -r requirement.txt 批量安装。pip通过requirement.txt文件批量安装安装包...转载 2020-02-10 10:57:18 · 3327 阅读 · 0 评论 -
解决flask项目无法使用命令行进行数据库迁移问题
最近做的项目是使用flask框架做的,所以又把以前的flask项目拿出来练习一下。在创建了一个模型对象后准备进行数据库的迁移,发现使用命令:python manage.py db init 进行初始化时直接是启动项目,看了半天找不到问题,又去看了以前写的代码。解决:(1)把以前使用app.run()启动的方式改成使用命令行对象启动,即manager.run().(2)此时,在启动项目时有报错...原创 2020-02-09 15:08:12 · 647 阅读 · 0 评论 -
Flask模板中特有的变量和函数
configrequestsessiongurl_for()get_flashed_messages()详情见:Flask模板特有的变量和函数原创 2020-01-15 22:22:59 · 149 阅读 · 0 评论 -
Flask中mysql数据库的基本操作
在Flask-SQLAlchemy中,插入、修改、删除操作,均由数据库会话管理。会话用 db.session 表示。在准备把数据写入数据库前,要先将数据添加到会话中然后调用 commit() 方法提交会话。在 Flask-SQLAlchemy 中,查询操作是通过 query 对象操作数据。最基本的查询是返回表中所有数据,可以通过过滤器进行更精确的数据库查询。...原创 2019-11-15 23:24:50 · 767 阅读 · 0 评论 -
关于HTTP请求出现 405状态码 not allowed的解决办法
最近在用写一个Flask小的Demo,前端ajax发起post请求,结果返回405,Not allow method!原因为 Apache、IIS、Nginx等绝大多数web服务器,都不允许静态文件响应POST请求。网上有人说改成get请求方式,可行倒是可行,但不符合restful风格。尝试在注册路由时通过methods=[‘POST’]指明了允许访问的方式,就可以post正常请求了!!!...原创 2019-11-11 23:14:02 · 11301 阅读 · 0 评论 -
Flask中请求参数和响应对象
Flask 常用的请求方法有五种,默认是GET.methods=['GET', 'POST','DELETE'.'PUT','HEAD']1、路径参数:格式:/test/<参数类型:参数名>参数类型有:string 默认类型,会将斜线认为是参数分隔符int 限制参数的类型是int类型float 显示参数对的类型是float类型path 接受到的数据格式是字符串,特性...原创 2019-11-08 00:58:01 · 443 阅读 · 0 评论