django批量查询中的外键关系?
是否可以对具有外键关系的列使用bulk_create方法django批量查询中的外键关系?,django,python-2.7,Django,Python 2.7,是否可以对具有外键关系的列使用bulk_create方法 class Reports(models.Model): groupname=models.CharField(max_length=250, null=True, blank=True); datecreated = models.DateTimeField(null=True, blank=True); class Reportsquery(models.Model): group = models.For
class Reports(models.Model):
groupname=models.CharField(max_length=250, null=True, blank=True);
datecreated = models.DateTimeField(null=True, blank=True);
class Reportsquery(models.Model):
group = models.ForeignKey(Reports,null=True, blank=True);
queryset=models.CharField(max_length=1000, null=True, blank=True);
list=[Reportsquery({"group__id":6,"queryset":"abc"}),....,...]
Reportsquery.objects.bulk_create(list)
类似的查询适用于get_或_create()方法,但与一起使用时返回错误
批量创建()
例如:
上面的示例将group_uid=6插入到Reportsquery表中如果您试图在
Reportsquery
旁边创建报告的实例,则没有bulk_create()
不会这样做。但是,如果数据库中已经存在报告的实例
,则可以手动将其主键
添加到传递给批量创建()的列表中。然后,将使用与报告的正确关系创建Reportquery
实例bulk\u create()
返回什么错误?无法将组id解析为字段。请使用一个下划线,即:组id
@MattDeacalionStevens是的,它可以工作!!!谢谢:)可能与否重复,我只是尝试映射存在的报表实例。无论如何,“\u”比X有效。如果OP尝试在Reportsquery旁边创建报表实例,是另一种方法吗,因为bulk\u create()不会这样做?
Reportsquery.objects.get_or_create(group__id=6,quseryset="abc")