django更新多条记录

时间:2013-06-06 16:14:38

标签: django

我正在尝试根据已在表单POST中发送的ID列表一次更改我的联系人组。

@login_required
def contact_move(request, group_id):
    if request.method == 'POST':

        group = Group.objects.get(pk=group_id)
        Contact.objects.filter(id__in=request.POST["contacts"]).update(group=group)

联系人帖子看起来像这样。 5049,5041

然而,没有任何更新,我没有错误。我做错了什么?

2 个答案:

答案 0 :(得分:5)

您需要使用request.POST.getlist("contacts")

  

以Python列表的形式返回带有请求键的数据。如果密钥不存在且未提供默认值,则返回空列表。除非默认值没有列表,否则保证返回某种列表。

答案 1 :(得分:2)

几乎需要getlist尝试:

getIDs = request.POST.getlist("contacts")
        Contact.objects.filter(id__in=getIDs).update(group=group)