【问题标题】:Path error in django rest framework : Specifying a namespace in include() without providing an app_name is not supporteddjango rest 框架中的路径错误:不支持在 include() 中指定命名空间而不提供 app_name
【发布时间】:2020-05-19 23:18:47
【问题描述】:

在我的 django rest 框架应用程序中,我有 Urls.py 如下:

from django.urls import include, path
from .shipper import*
from .views import *


urlpatterns = [path('shipper/',
                    include(path('shipperitems/', MasterItemsList.as_view()),
                            path('shippercreateapi/', shipperCreateAPIView.as_view()),)),

               ]

当我尝试运行该应用程序时,它给了我以下错误:

django.core.exceptions.ImproperlyConfigured:在 不支持不提供 app_name 的 include()。设置 包含模块中的 app_name 属性,或传递 2 元组 而是包含模式列表和 app_name。

我应该怎么做才能解决这个问题?

【问题讨论】:

标签: django python-3.x django-rest-framework django-urls


【解决方案1】:

检查包含here 的文档。您应该传递参数以包含这样的内容

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

(credits)

【讨论】:

    【解决方案2】:

    您以错误的方式使用include(...) 函数。 include(...) 通常采用包含 url-patterns 的模块。所以改变你的代码如下,

    #root urls.py
    from django.urls import include, path
    
    urlpatterns = [
        path('shipper/', include('shipper.urls'),
    ]
    

    #/shipper/urls.py
    urlpatterns = [
        path('shipperitems/', MasterItemsList.as_view()),
        path('shippercreateapi/', shipperCreateAPIView.as_view()),)),
    
    ]
    

    【讨论】:

      猜你喜欢
      • 2019-02-13
      • 2018-07-07
      • 2018-12-03
      • 2020-04-10
      • 2018-07-14
      • 2019-07-04
      • 1970-01-01
      • 2020-04-23
      • 2019-06-14
      相关资源
      最近更新 更多