django更新m2m字段
我有一个模型服务和一个名为service的ModelForm,用于添加和更新服务模型。模型如下所示:django更新m2m字段,django,django-forms,Django,Django Forms,我有一个模型服务和一个名为service的ModelForm,用于添加和更新服务模型。模型如下所示: class Service(models.Model): categories = models.ManyToManyField(Category) “类别”字段显示为允许多个选择的标记。当我添加新记录时效果很好,但当我更新它时,请求上只显示一个服务。即使我选择了多个类别,也会发布['categories'] 我尝试转储请求对象,我可以看到类别显示如下内容: u'categories'
class Service(models.Model):
categories = models.ManyToManyField(Category)
“类别”字段显示为允许多个选择的标记。当我添加新记录时效果很好,但当我更新它时,请求上只显示一个服务。即使我选择了多个类别,也会发布['categories']
我尝试转储请求对象,我可以看到类别显示如下内容:
u'categories': [u'3', u'4', u'2']
我尝试调用请求。_get_post()但它只返回1个类别,因此请求。post['categories']只返回1个类别。有谁知道发生了什么以及如何修复它吗?您可能想使用
request.POST.getlist('categories')
它将返回该表单字段的所有选定值。能否提供将多项选择呈现为标记字段的小部件的详细信息?也许这工作不正常…它使用django的默认小部件处理许多关系,显示为select标记。