设置正确的URL使bool成为Django

时间:2013-07-30 13:37:34

标签: python html django boolean

我正在向用户发送电子邮件。我有一个工作链接让用户将bool设置为“True”。虽然,我无法获得正确的URL将其设置为False。 在views.py中:

def confirm(request, itemnum):
    item = get_object_or_404(PurchaseOrder, item_number = itemnum)
    item.confirmed = True
    item.save()
    return HttpResponse('Item number %s  changed to true' % itemnum )

def deny(request, itemnum):
    item = get_object_or_404 (PurchaseOrder, item_number = itemnum)
    item.confirmed = False
    item.save()
    return HttpResponse('Item number %s changed to false' %itemnum)

在urls.py中:

urlpatterns = patterns('',

    url(r'^(?P<itemnum>\d+)/$', views.confirm, name = 'confirm-page'), #This it to set the bool as true. I just need a url to set it as false that uses a itemnum, but somehow adds a keyword maybe such as false/56/
 )

我需要设置一个URL,让用户使用每个项目的唯一主键将其更改为false。但是我该怎么做呢?

1 个答案:

答案 0 :(得分:2)

您可以像这样设置urlpatterns

urlpatterns = patterns('',
    url(r'^confirm/(?P<itemnum>\d+)/$', 'yourapp.views.confirm', name='confirm-page'),
    url(r'^deny/(?P<itemnum>\d+)/$', 'yourapp.views.deny', name='deny-page'),
)

因此,如果用户访问http://yourdomain.com/confirm/3/,则会confirm = {3}进入itemnum视图。如果用户访问http://yourdomain.com/deny/5/,则会导致查看deny } itemnum = 5