Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django url中的多个PK_Python_Regex_Django_Django Rest Framework - Fatal编程技术网

Python Django url中的多个PK

Python Django url中的多个PK,python,regex,django,django-rest-framework,Python,Regex,Django,Django Rest Framework,我目前正在尝试使用Django Rest框架构建一个API。目前,我希望能够在一个url中包含多个PK,但尝试时出现错误: django.core.exceptions.ImpropertlyConfigured: “^video/(?P[0-9]+)/quick/(?P[0-9]+)/list/$”不是有效的 正则表达式:将组名“pk”重新定义为组2;是 第1组第31位 以下是我的网址: url(r'^video/(?P<pk>[0-9]+)/quiz/(?P<pk>[

我目前正在尝试使用Django Rest框架构建一个API。目前,我希望能够在一个url中包含多个PK,但尝试时出现错误:

django.core.exceptions.ImpropertlyConfigured: “^video/(?P[0-9]+)/quick/(?P[0-9]+)/list/$”不是有效的 正则表达式:将组名“pk”重新定义为组2;是 第1组第31位

以下是我的网址:

url(r'^video/(?P<pk>[0-9]+)/quiz/(?P<pk>[0-9]+)/list/$',
        views.QuizList.as_view(),
        name='quizzes-list'),
url(r'^video/(?P<pk>[0-9]+)/quiz/(?P<pk>[0-9]+)/detail/$',
        views.QuizDetail.as_view(),
        name='quizzes-detail'),
更新的URL:

    ###
    # Quiz urls
    ###

    url(r'^video/(?P<pk1>[0-9]+)/quiz/(?P<pk2>[0-9]+)/list/$',
        views.QuizList.as_view(),
        name='quizzes-list'),
    url(r'^video/(?P<pk1>[0-9]+)/quiz/(?P<pk2>[0-9]+)/detail/$',
        views.QuizDetail.as_view(),
        name='quizzes-detail'),
新错误:

无法使用视图名称解析超链接关系的URL “测验清单”。您可能未能将相关模型包括在中 您的API,或未正确配置上的
查找\u字段
属性 这个领域


必须为命名的捕获组指定唯一的名称

url(r'^video/(?P<pk1>[0-9]+)/quiz/(?P<pk2>[0-9]+)/list/$',
    views.QuizList.as_view(),
    name='quizzes-list'),
例:


我还是不明白。我是新来的。我发表了我的观点。我该如何为他们实现相应的pk*呢?我更新了所有内容,但现在得到了一个新的错误,我在上面发布了这个错误。我对这个错误感到困惑,因为“测验列表”列在url名称中,而我没有查找字段。有什么方向吗?感谢所有的帮助。@Ryan113看一看
class QuizList(generics.ListCreateAPIView):
    queryset = Quizzes.objects.all()
    serializer_class = QuizSerializer

    def get(self, request, *args, **kwargs):
        pk1 = kwargs.get('pk1', None)
        pk2 = kwargs.get('pk2', None)
        print(pk1)
        print(pk2)
        return self.list(request, *args, **kwargs)
url(r'^video/(?P<pk1>[0-9]+)/quiz/(?P<pk2>[0-9]+)/list/$',
    views.QuizList.as_view(),
    name='quizzes-list'),
pk1 = kwargs.get('pk1', None)
pk2 = kwargs.get('pk2', None)
# quiz
class QuizList(generics.ListCreateAPIView):
    queryset = Quizzes.objects.all()
    serializer_class = QuizSerializer

    def get(self, *args, **kwargs):
        pk1 = kwargs.get('pk1', None)
        pk2 = kwargs.get('pk2', None)
        print pk1
        print pk2
        return super(QuizList, self).get(*args, **kwargs)