带有Django 2.0的Django REST Framework URL

标签 django django-rest-framework django-2.0

我正在尝试使用Django 2.0项目设置Django REST Framework,这意味着url(r'^something/' ...已替换为path(something/ ...

我正在尝试找出如何设置rest_framework模式。

这就是我所拥有的:

router = routers.DefaultRouter()
router.register(r'regulations', api.RegulationViewSet)
router.register(r'languages', api.LanguageViewSet)


urlpatterns = [
    ...
    path('api-auth/', include('rest_framework.urls', namespace='rest_framework')),
    ...
]

如果我去http://127.0.0.1:8000/regulations我只会得到:

Page not found (404)



我应该如何设置urlpatterns

最佳答案

urlpatterns = [
    ...
    path('', include(router.urls)),
    path('api-auth/', include('rest_framework.urls', namespace='rest_framework')),
    ...
]

使用path('', include(router.urls)),,您可以获得:
http://127.0.0.1:8000/regulations/
http://127.0.0.1:8000/languages/


path('api-auth/', include('rest_framework.urls', namespace='rest_framework')),

你可以得到:
http://127.0.0.1:8000/api-auth/{other paths}

关于带有Django 2.0的Django REST Framework URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49005264/

相关文章:

django - 管理员登录表单 django

python - Django 休息框架外键约束无法创建模型

python - 如何使用 Django 和 rest_framework 通过 url 中的外键检索对象

python - 为了在Django 2.0.2中实现CreateView(CBV),是否需要在我们的项目中实现ModelForm?

Django:在创建对象时搜索多对多字段

python - 获取类型错误 : __init__() missing 1 required positional argument: 'on_delete' when trying to add parent table after child table with entries

django - 配置 Django-oauth-plus 时出错

python - Django 转储数据 django.contrib.auth

python - Django 2.0.7 - 进行重命名字段迁移时出现语法错误

python - Django 明显不与 Postgres 一起工作