pk相当于主键,不用管主键是什么,用pk代替即可
前端代码 <a href="/book_edit/?id={{ all_book.pk }}">编辑</a>
<a href="/book_del/?id={{ all_book.pk }}">删除</a>
{# <a href="/book_del/?id={{ all_book.id }}">删除</a>#}
{# 此处一定是要用主键,主键才能查找,或者使用唯一性的值,如果不是唯一,例如书名相同, 那么删除时可能会删除掉多条数据 #}
后端代码
def book_del(request):
pk = request.GET.get("id") # 此处的id是前端定义时传送过来的
ret = models.Book.objects.filter(pk=pk)
# 浏览器界面输入 http://127.0.0.1:8000/book_del/?id=180,则ret为空
if not ret:
return HttpResponse("数据不存在")
ret.delete()
return redirect("book_list")
以删除为例,点击删除按钮,发生两个动作,第一是发送get请求,通过此请求获得要操作的哪一行的id,删除之后再重定向展示页面
原文:https://www.cnblogs.com/lvweihe/p/11733884.html