从另一个视图调用视图
Call view from another view
我有一个视图集,其中一个视图为:
@list_route(methods=["get"], url_path="special")
def special():
pass
我从另一个角度称这个视图为:
view_fn = viewset.as_view({'get': 'list'})
response = view_fn(request)
但它不会调用映射到 "/special/"
的 special
函数,而是调用映射到 "/"
的函数。我想我需要以某种方式传递 url_path
或使用视图 name
获取视图?但是,我也不知道该怎么做。
这将不起作用,因为您需要将该路线映射到操作。
在当前形式中,您将默认列表操作映射到 get 方法。
以下代码应该有效:
view_fn = viewset.as_view({'get': 'special'})
我有一个视图集,其中一个视图为:
@list_route(methods=["get"], url_path="special")
def special():
pass
我从另一个角度称这个视图为:
view_fn = viewset.as_view({'get': 'list'})
response = view_fn(request)
但它不会调用映射到 "/special/"
的 special
函数,而是调用映射到 "/"
的函数。我想我需要以某种方式传递 url_path
或使用视图 name
获取视图?但是,我也不知道该怎么做。
这将不起作用,因为您需要将该路线映射到操作。
在当前形式中,您将默认列表操作映射到 get 方法。
以下代码应该有效:
view_fn = viewset.as_view({'get': 'special'})