阅读(2408) (20)

Flask 基于调度的即插视图方法

2021-06-23 10:08:59 更新

对每个 HTTP 方法执行不同的函数,对 RESTful API 非常有用。你可以通过 ​flask.views.MethodView​ 容易地实现。每个 HTTP 方法映射到同名函数 (只有名称为小写的):

from flask.views import MethodView

class UserAPI(MethodView):

    def get(self):
        users = User.query.all()
        ...

    def post(self):
        user = User.from_form_data(request.form)
        ...

app.add_url_rule('/users/', view_func=UserAPI.as_view('users'))

如此,你可以不提供 ​methods​ 属性。它会自动的按照 类中定义的方法来设置。