【Flask的CBV用法】 𛗽

原文: http://blog.gqylpy.com/gqy/343

"很简单的,记住用法就行,直接上代码。

from flask import Flask, views, request, redirect

from flask import flash, get_flashed_messages
# 闪现,与CBV无关,如果只想学习CBV,可忽略它
# flash:存数据  get_flashed_messages:取数据

app = Flask(__name__)
app.secret_key = '密钥'  # 使用flash时,需设置密钥

# CBV
class Login(views.MethodView):
    # 默认写出来的请求方法都被允许,如果还是想重定制,可使用methods属性来重新定义允许的请求
    # methods = ['GET', 'POST']

    # 这是CBV的特殊装饰器,按索引顺序执行
    # decorators = [is_login, ok_login]

    def get(self):
        return """
            <form method='post'>
                <input type='text' name='username'/>
                <button>提交</button>
            </form>
        """

    def post(self):
        username = request.form.get('username')
        flash(username)  # 存数据
        return redirect('/home')

# 注册CBV的路由
app.add_url_rule('/login', view_func=Login.as_view('login'))
# app.add_url_rule('/login02', view_func=Login.as_view('login02'))  # 一个CBV可以有多条路由

@app.route('/home')
def home():
    print(get_flashed_messages('username'))  # [('message', 'zyk')]
    # 第一次取时,有值;再次刷新页面时就没有了
    return 'Thie is home page.'

app.run(debug=True)

"

原文: http://blog.gqylpy.com/gqy/343

原文地址:https://www.cnblogs.com/gqy02/p/11373815.html

时间: 2024-10-31 06:43:16

【Flask的CBV用法】 𛗽的相关文章

【Flask的CBV用法】 -- 2019-08-08 18:01:46

原文: http://106.13.73.98/__/118/ 很简单的,记住用法就行,直接上代码. from flask import Flask, views, request, redirect from flask import flash, get_flashed_messages # 闪现,与CBV无关,如果只想学习CBV,可忽略它 # flash:存数据 get_flashed_messages:取数据 app = Flask(__name__) app.secret_key =

Flask WTForm BooleanField用法

最近学习Flask-web框架,进行到登陆,教程就过于快,自己遇到一个问题要很久才能解决, BooleanField使用场景:进行选择框,比如:登陆界面,是否记住密码,那个选择框,就可以使用BooleanField来进行操作. BooleanField用法介绍很少,查不到,现在解决了所以就做这个笔记. 先来引用官方的介绍: class wtforms.fields.BooleanField(default field arguments, false_values=None) Represent

【Flask】CBV模式

Flask中的CBV模式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ''' flask中的CBV模式: (1)导入views模块: from flask import views (2)定义类,继承views.MethodView类: class 类名(views.MethodView) (3)在类中定义函数名为允许的请求方式的小写形式,进行函数定义,如def get(self):... (4)添加路由规则:      CBV:app.add_url_rule

flask中的CBV , flask-session在redis中存储session , WTForms数据验证 , 偏函数 , 对象里的一些小知识

flask中的CBV , flask-session在redis中存储session , WTForms数据验证 , 偏函数 , 对象里的一些小知识 flask中的CBV写法 后端代码 # 导入views from flask import Flask, render_template, views, request app = Flask(__name__) # CBV写法 class Login(views.MethodView):       # 定义一个类,不用装饰器,继承了Method

flask中的CBV和FBV

flask中CBV使用 from flask import Flask, views app = Flask(__name__) class Login(views.MethodView): methods = ['POST', 'GET'] # 如果需要在CBV中加装饰器的话,括号里就是装饰器的内存地址,可以传多个 decorators = () def get(self): print('get 请求') return 'login get' def post(self): print('p

flask之视图

flask的CBV模式 def auth(func): def inner(*args, **kwargs): result = func(*args, **kwargs) return result return inner class IndexView(views.MethodView): # methods = ['POST'] #只允许POST请求访问 decorators = [auth,] #如果想给所有的get,post请求加装饰器,就可以这样来写,也可以单个指定 def get

Python_WEB框架之Flask

前言: Django:1个重武器,包含了web开发中常用的功能.组件的框架:(ORM.Session.Form.Admin.分页.中间件.信号.缓存.ContenType....): Tornado:2大特性就是异步非阻塞.原生支持WebSocket协议: Flask:封装功能不及Django完善,性能不及Tornado,但是Flask的第三方开源组件比丰富:http://flask.pocoo.org/extensions/ Bottle:比较简单: 总结: 都不是我写的!!!不论优劣,不同的

Python之flask框架

Flask是一个Python编写的Web 微框架,让我们可以使用Python语言快速实现一个网站或Web服务.本文参考自Flask官方文档,大部分代码引用自官方文档. 安装flask 首先我们来安装Flask.最简单的办法就是使用pip. pip install flask 然后打开一个Python文件,输入下面的内容并运行该文件.然后访问localhost:5000,我们应当可以看到浏览器上输出了hello world. from flask import Flask app = Flask(

flask框架詳解

https://www.cnblogs.com/sss4/p/8097653.html 前言: Django:1个重武器,包含了web开发中常用的功能.组件的框架:(ORM.Session.Form.Admin.分页.中间件.信号.缓存.ContenType....): Tornado:2大特性就是异步非阻塞.原生支持WebSocket协议: Flask:封装功能不及Django完善,性能不及Tornado,但是Flask的第三方开源组件比丰富:http://flask.pocoo.org/ex