0

我的目标是将 2 个参数从我的命名空间传递到我的其他视图中。

  <li><a href ="{% url world:p p.id 1 %}">{{p.description}}

如果这没有意义,我很抱歉。我正在尽力找到合适的词来描述我的问题。

我试图传递给views.py中的delpic函数的参数是一个图片ID和一个整数,但为了让它工作,它必须传递正则表达式,然后它将被发送到我的views.py。

def delpic(request,picture_id,digit):

     digit = digit
     If digit == "1":
               #Something
     If digit == "2":
               # Something
     return render(request,'boardeditor.html',{'board':BoardNameForm(request.user),})

但是当我试图将两者都传递给我的观点时。我收到这个错误

  TypeError at /delpic/3/1/

  delpic() takes exactly 3 non-keyword arguments (2 given)

我认为是我的正则表达式导致了问题

    url(
        r'^delpic/(?P<picture_id>\d+)/(\d{1})/$',
        'pet.views.delpic',
        name= 'delpic',
    ),

我的主 URL 配置文件

url(
    r'^',
    include('pet.urls',
        namespace = 'world')
),
4

1 回答 1

9

您错误地使用了正则表达式。

该视图需要一个命名的正则表达式,而您没有命名它。视图不明白发生了什么。

您的视图的正确正则表达式是这样的:

r'^delpic/(?P<picture_id>\d+)/(?P<digit>\d+)/$'
于 2013-03-25T14:18:47.140 回答