删除django中的订单号

时间:2011-02-17 10:12:18

标签: python django views

我有一个订单号列表。从我的服务订单视图中,我可以手动输入字段编号以查找要删除的订单号。这很有效。

order = models.Order.objects.get(pk=1219)
if request.POST.get('delete'):
    order.delete()

现在我的问题。我有一个编辑订单表单,其网址为/orders/edit/(?P<order_no>\d+)/,在此修改订单表单中,我可以转到名为/quote/service_order/(?P<client_id>\d+)/(?P<request_type>\d+)/的新页面。在服务订单视图中,这是删除订单的位置。而不是手动写下主键值(订单号),我想删除编号顺序表格url之前的任何(?P \ d +)的订单号。有可能解决这个问题吗?我希望我把一切都搞清楚了。

1 个答案:

答案 0 :(得分:1)

您可以接受查询字符串中的多个参数,如下所示:

/quote/service_order/(\d+)/(\d+)

然后在你看来:

# client_id - first parameter in braces from the url
# order_id - 2nd parameter in braces from the url
def order_view(request, client_id, order_id):
    order = models.Order.objects.get(pk=int(order_id))
    if request.POST.get('delete'):
        order.delete()

不要忘记检查用户是否有权删除订单。