代码之家  ›  专栏  ›  技术社区  ›  Tiago Peres damanpreet singh

未找到“用户创建”的DRF反向

  •  0
  • Tiago Peres damanpreet singh  · 技术社区  · 5 年前

    在app/urls.py中有一个名为MyUserCreate的视图

    from django.conf.urls import url
    from . import views
    
    urlpatterns = [
        url(r'api/users^$', views.MyUserCreate.as_view(), name='user-create'),
    ]
    

    这是我的根urls.py

    from django.contrib import admin
    from django.urls import include, path, re_path
    from rest_framework import permissions
    from drf_yasg.views import get_schema_view
    from drf_yasg import openapi
    
    schema_view = get_schema_view(
       openapi.Info(
          title="Snippets API",
          default_version='v1',
          description="Test description",
          terms_of_service="https://www.google.com/policies/terms/",
          contact=openapi.Contact(email="contact@snippets.local"),
          license=openapi.License(name="BSD License"),
       ),
       public=True,
       permission_classes=(permissions.AllowAny,),
    )
    
    urlpatterns = [
        re_path(r'^swagger(?P<format>\.json|\.yaml)$', schema_view.without_ui(cache_timeout=0), name='schema-json'),
        re_path(r'^swagger/$', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'),
        re_path(r'^redoc/$', schema_view.with_ui('redoc', cache_timeout=0), name='schema-redoc'),
    
        path('test/', include('test_app.urls')),
        path('admin/', admin.site.urls),
        #path('user/', include('user.urls'))
    ]
    

    应用内/tests.py

    self.create_url = reverse('user-create')
    

    跑步

    python manage.py test
    

    出现此错误

    回溯(最后一次调用):文件 “C:\Users\tiago\Desktop\letsgo\COVID19 be\django_server\user\tests.py”, 第13行,设置中 self.create_url=reverse('user-create')文件“C:\Users\tiago\Desktop\letsgo\venv\lib\site-packages\django\urls\base.py”, 第87行,反向 返回iri_to_uri(resolver.reverse_with_prefix(视图、前缀、*args、**kwargs))文件“C:\Users\tiago\Desktop\letsgo\venv\lib\site-packages\django\urls\resolvers.py”, 第677行,在_reverse_with_prefix中 引发NoReverseMatch(msg)django.urls.异常。NoReverseMatch:找不到“用户创建”的反转用户创建的视图无效 函数或模式名称。

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

    1 回复  |  直到 5 年前
        1
  •  1
  •   JPG    5 年前

    您没有将应用程序URL包含在 根URL config

    urlpatterns = [
        # other URLs
    
        path('user/', include('user.urls'))
    ]