我一开始使用的是正则表达式传参
url('^delete_books/(?P<id>.*?)/$', views.delete_books),
显然这样写是没有问题的,在views中接收这个参数
def delete_books(request,book_id):
b = BookInfo.objects.get(id=int(book_id))
b.delete()
return redirect('/total_books/')
这样写就会报错误,因为参数传不过来,也无法执行,直接报错
然后试了一下*args和**kwargs,前面一个我试了返回的是一个元组接收不到值。而**kwargs返回来了一个字典正好接收到!
def delete_books(request, *args, **kwargs):
b = BookInfo.objects.get(id=int(kwargs['id']))
b.delete()
return redirect('/total_books/')
此时就可以正常接收到参数了