Performance 如何在对数据库的点击次数最少的情况下向Django reverse外键集添加多个实例?

Performance 如何在对数据库的点击次数最少的情况下向Django reverse外键集添加多个实例?,performance,django-models,foreign-keys,django-related-manager,Performance,Django Models,Foreign Keys,Django Related Manager,例如,我有两种型号: class Person(models.Model): name = models.CharField(max_length=100) class Job(models.Model): title = models.CharField(max_length=100) person = models.ForeignKey(Person) 我有一个工作ID列表-- 这是作业模型实例的PK 我知道我能行-- 但这将是比我能做的更多的查询-- 它将在其中

例如,我有两种型号:

class Person(models.Model):
    name = models.CharField(max_length=100)

class Job(models.Model):
    title = models.CharField(max_length=100)
    person = models.ForeignKey(Person)
我有一个工作ID列表--

这是作业模型实例的PK

我知道我能行--

但这将是比我能做的更多的查询--

它将在其中解包列表并使用bulk_create。我该怎么做?谢谢。

你试过了吗

person.jobs.add(*job_ids)
在我的例子中,我使用了一个过滤器查询,并有一个对象列表(与id相反)。我得到了一个类似的错误

TypeError: 'MyModel' instance expected, got [<MyModel: MyModel Object>]
TypeError:需要“MyModel”实例,获得[]
…在我加入星号之前

person.jobs.add(job_ids)
person.jobs.add(*job_ids)
TypeError: 'MyModel' instance expected, got [<MyModel: MyModel Object>]