我在我的Django應用程序以下型號:批量創建的對象包含在Django
class Ratings(models.Model):
field1 = models.ForeignKey(Table1)
field2 = models.ForeignKey(Table2)
field3 = models.ForeignKey(Table3)
field4 = models.ForeignKey(Table4)
field5 = models.ForeignKey(Table5)
class Values(models.Model):
grade = models.ForeignKey(Grade)
rating = models.ForeignKey(Ratings, related_name='ratings')
value = models.TextField(blank=True, null=True)
我使用下面的代碼來創建等級表的實例:
rating_obj = Ratings(
field1_id=id1,
field2_id=id2,
field3_id=id3,
field4_id=id4,
field5_id=id5
)
rating_obj.save()
上述方法可行,但速度太慢。我必須創建約30個這種模型的實例。我無法使用bulk_create因爲我需要參照rating_obj創建值對象。我已經嘗試使用raw_sql
進行插入,但無濟於事。
有人可以提出一個更好的方法來實現相同的目標。
P.S. Table1,Table2..etc在其主鍵中已經具有db_index = True。