flask
懒惰的小肥肥
凡事要亲力亲为!
展开
-
Flask 重定向到上一个页面
在项目中我们会遇到一些应用场景,在访问某个URL后重定向到上一个页面。比如我们在访问一个博客页面时,点击评论链接就直接重定向到登录页面,当用户登录后合理的行为是跳转到评论页面而不是主页面。如下示例:def func_a(): return "<h2>这是a页面</h2><a href='{}'>do_something</a>".format(url_for('do_something'))@app.route('/b')def func_b原创 2020-06-01 11:39:47 · 3147 阅读 · 0 评论 -
Flask-SQLALchemy筛选出日期等于今天的数据
User类:class User(UserMixin, db.Model): id = db.Column(db.Integer, primary_key=True) email = db.Column(db.String(20), unique=True) username = db.Column(db.String(30), unique=True) password = db.Column(db.String(128)) create_time = db.Co原创 2020-05-29 17:53:09 · 2197 阅读 · 1 评论 -
Flask-SQLALchemy数据模型关系
一对多class Author(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String, unique=True) gender = db.Column(db.String(1)) location = db.Column(db.String(50))class Aritcle(db.Model): id = db.Column(db.Integer,原创 2020-05-27 16:04:00 · 324 阅读 · 0 评论 -
Flask-SQLAlchemy常用方法
**常用查询**all()返回所有记录Note.query.all()first()返回第一条记录Note.query.first()get()返回指定主键值(id字段)的记录Note.query.get(1)count()返回记录的数量Note.query.count()filter()使用指定的规则过滤记录,返回新产生的查询对象Note.query.filter(Note.title =='flask').first()# 除了‘==’和'!='外,其他常用操作符 L原创 2020-05-27 12:11:32 · 1306 阅读 · 1 评论 -
flask学习:邮件支持
Flask-Mail简介就实际的邮件发送而言,Flask有一个名为Flask-Mail的流行插件,可以使任务变得非常简单。 和往常一样,该插件是用pip安装的:(venv) $ pip install flask-mail密码重置链接将包含有一个安全令牌。 为了生成这些令牌,我将使用JSON Web Tokens,它也有一个流行的Python包:(venv) $ pip install p...原创 2019-12-15 17:13:49 · 381 阅读 · 0 评论 -
Flask-Login学习笔记
Flask-Login 为 Flask 提供了用户会话管理。它处理了日常的登入,登出并且长时间记住用户的会话。它会:在会话中存储当前活跃的用户 ID,让你能够自由地登入和登出。让你限制登入(或者登出)用户可以访问的视图。处理让人棘手的 “记住我” 功能。帮助你保护用户会话免遭 cookie 被盗的牵连。可以与以后可能使用的 Flask-Principal 或其它认证扩展集成但是,它...原创 2019-12-14 15:10:03 · 332 阅读 · 0 评论 -
flask学习:用户登录
密码哈希在前一章中,用户模型设置了一个password_hash字段,到目前为止还没有被使用到。 这个字段的目的是保存用户密码的哈希值,并用于验证用户在登录过程中输入的密码。 密码哈希的实现是一个复杂的话题,应该由安全专家来搞定,不过,已经有数个现成的简单易用且功能完备加密库存在了。其中一个实现密码哈希的包是Werkzeug,当安装Flask时,你可能会在pip的输出中看到这个包,因为它是Fl...转载 2019-12-14 13:28:41 · 389 阅读 · 0 评论 -
Flask数据库基本操作-SQLAlchemy
Flask数据库D:使用扩展包flask-sqlalchemy来操作数据库(增删改查)E:通过 Python 对象来操作数据库,在舍弃一些性能开销的同时,换来的是开发效率的较大提升U:常用的SQLAlchemy字段类型常用的SQLAlchemy列选项常用的SQLAlchemy关系选项①安装扩展包及导包安装flask-sqlalchemy:pip install flask-sq...转载 2019-12-13 15:52:36 · 225 阅读 · 0 评论 -
flask学习:数据库
Flask中的数据库Flask本身不支持数据库,相信你已经听说过了。 正如表单那样,这也是Flask有意为之。对使用的数据库插件自由选择,岂不是比被迫适应其中之一,更让人拥有主动权吗?绝大多数的数据库都提供了Python客户端包,它们之中的大部分都被封装成Flask插件以便更好地和Flask应用结合。数据库被划分为两大类,遵循关系模型的一类是关系数据库,另外的则是非关系数据库,简称NoSQL,...转载 2019-12-13 12:23:57 · 174 阅读 · 0 评论 -
flask学习:Web表单
这是Flask Mega-Tutorial系列的第三部分,我将告诉你如何使用Web表单。在第二章中我为应用主页创建了一个简单的模板,并使用诸如用户和用户动态的模拟对象。在本章中,我将解决这个应用程序中仍然存在的众多遗漏之一,那就是如何通过Web表单接受用户的输入。Web表单是所有Web应用程序中最基本的组成部分之一。 我将使用表单来为用户发表动态和登录认证提供途径。在继续阅读本章之前,确保你...原创 2019-12-12 19:22:10 · 303 阅读 · 0 评论 -
TypeError: __init__() takes from 1 to 2 positional arguments but 3 were given错误原因
在flask的web项目中出现如下错误:127.0.0.1 - - [12/Dec/2019 18:32:47] "POST /login HTTP/1.1" 500 -127.0.0.1 - - [12/Dec/2019 18:33:37] "GET /login HTTP/1.1" 200 -[2019-12-12 18:33:41,714] ERROR in app: Exceptio...原创 2019-12-12 18:36:59 · 9809 阅读 · 0 评论 -
flask学习 :模版
**什么是模板?**user = {'username': 'Miguel'}创建模拟对象是一项实用的技术,它可以让你专注于应用程序的一部分,而无需为系统中尚不存在的其他部分分心。 在设计应用程序主页的时候,我可不希望因为没有一个用户系统来分散我的注意力,因此我使用了模拟用户对象,来继续接下来的工作。原先的视图函数返回简单的字符串,我现在要将其扩展为包含完整HTML页面元素的字符串,如...转载 2019-12-12 16:10:16 · 122 阅读 · 0 评论 -
flask学习笔记
Flask框架Flask 是一个用于 Python 的微型网络开发框架。Flask的‘微’体现在它只提供Web服务的基本功能,其他的功能是由Flask的扩展实现,用户可以根据需求应用核心扩展。它的基本功能依赖于符合 WSGI 规范(Web Server Gateway Interface)的 Werkzeug 库和模板系统 Jinja2。当我们通过URL访问网站时,是向Web服务器发送了请...原创 2019-12-12 14:22:51 · 191 阅读 · 0 评论