flask-标准类视图及其使用场景

继承自flask.view.View,返回基于Response或其自类的对象

from flask import Flask,views

app = Flask(__name__)

class Listview(views.View):
    def dispatch_request(self):
        return 'list view'

app.add_url_rule('/list/',endpoint='list',view_func=Listview.as_view('list'))

flask-标准类视图及其使用场景

类视图使用场景:

需求1:有几个url需要返回json数据

class JsonView(views.View):
    def get_data(self):
        raise NotImplementedError
    def dispatch_request(self):
        return jsonify(self.get_data())

class ListView(JsonView):
    def get_data(self):
        return {'username':'zhiliao','password':'111111'}

app.add_url_rule('/list/',endpoint='list',view_func=ListView.as_view('list'))

需求2:有几个视图需要返回相同的变量

flask-标准类视图及其使用场景