quart.views 模块#

class quart.views.MethodView#

基类:View

一个 HTTP 方法(动词)特定的视图类。

它实现了 dispatch_request() 方法,该方法根据动词调用方法,例如 GET 请求由 get 方法处理。例如:

class SimpleView(MethodView):
    async def get(id):
        return f"Get {id}"

    async def post(id):
        return f"Post {id}"

  app.add_url_rule('/<id>', view_func=SimpleView.as_view('simple'))
async dispatch_request(**kwargs: Any) ResponseReturnValue#

覆盖并返回一个响应。

它将使用请求 view_args 调用,即任何 URL 参数。

class quart.views.View#

基类:object

用于在类结构中定义路由。

View 子类必须实现 dispatch_request() 方法才能响应请求。要根据请求 HTTP 动词自动查找方法,请参见 MethodView

一个使用示例:

class SimpleView:
    methods = ['GET']

    async def dispatch_request(id):
        return f"ID is {id}"

app.add_url_rule('/<id>', view_func=SimpleView.as_view('simple'))

注意类

decorators#

应用于视图方法的装饰器列表。装饰器按列表中的顺序应用。

类型:

ClassVar[list[Callable]]

methods#

此视图允许的方法列表。

类型:

ClassVar[Collection[str] | None]

provide_automatic_options#

覆盖自动 OPTIONS(如果设置),设置为 True 或 False。

类型:

ClassVar[bool | None]

init_every_request#

为每个请求创建一个新实例。

类型:

ClassVar[bool]

classmethod as_view(name: str, *class_args: Any, **class_kwargs: Any) RouteCallable#
decorators: ClassVar[list[Callable]] = []#
async dispatch_request(**kwargs: Any) ResponseReturnValue#

覆盖并返回一个响应。

它将使用请求 view_args 调用,即任何 URL 参数。

init_every_request: ClassVar[bool] = True#
methods: ClassVar[Collection[str] | None] = None#
provide_automatic_options: ClassVar[bool | None] = None#