【发布时间】:2019-09-26 17:52:16
【问题描述】:
我正在尝试在我的测试中使用 reverse()。我试过this answer!但它不起作用。
我仍然收到错误django.urls.exceptions.NoReverseMatch: Reverse for 'patients-list' with no arguments not found。
router = DefaultRouter()
router.register(r'patients', views.PatientSet, base_name='patients')
urlpatterns = [
url(r'^', include(router.urls)),
]
这里是ModelViewSet
class PatientSet(viewsets.ModelViewSet):
queryset = Patient.objects.all()
serializer_class = PatientSerializer
permission_classes = [IsDoctorUser]
filter_backends = (filters.DjangoFilterBackend,)
filter_fields = ['is_active']
我在测试中使用这种方式url = reverse('patients-list')
【问题讨论】:
-
你能提供你的
PatientSet吗?看起来好像找到了,但需要-listurl 名称的参数。 -
问题已更新。
-
您似乎忘记将 URL 配置添加到
urlpatterns列表中。应该是urlpatterns = [ url(r'^', include(router.urls)), ]@Zoro-Zen -
我没有在问题中正确添加它,但我在我的 urlpatterns 列表中有它。再次更新问题。
标签: django url django-rest-framework django-views django-urls