Django Rest Framework - 如何路由到函数视图

2024-02-02

我在用Django with Django Rest Framework.

Django==2.0.2
djangorestframework==3.7.7

我正在尝试路由到function view.

我当前的设置如下所示:

- project
    - project
        - urls
    - app
        - urls
        - views

In project/urls,我参考了app's像这样的网址:

url(r'^app_api/', include('app_api.urls', namespace='app_api'))

In app/urls,我路由到这样的视图:

router.register(r'', views.app_api, base_name="app_api")
url(r'', include(router.urls)),

In app/views我定义了一个名为的函数app_api并装饰它api_view.

@api_view(['GET'])
def app_api(request):

如果我运行服务器并且curl http://localhost:8080/app_api/例如,我收到状态 200 和空 JSON 的响应。

"GET /app_api/ HTTP/1.1" 200 2 {}

我不明白为什么会发生这种情况。如果我使用基于类的视图集,它可以工作,但不能与函数视图一起使用。

使用时路由到功能视图的正确方法是什么Django Rest Framework?

Thanks!


我不明白你为什么在这里使用路由器。这些用于视图集:路由器生成视图集的所有 URL 端点。你有一个单一的观点;如果它是一个类或函数,没有什么区别,你需要为它声明一个显式端点,就像在普通的 Django 中一样。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django Rest Framework - 如何路由到函数视图 的相关文章

随机推荐