在Django中大量创建数据

时间:2016-12-28 20:18:58

标签: django

我有一个模特单位。

class Unit(CommonInfo):
    version = IntegerVersionField( )
    number = models.CharField(max_length=30,null=True, blank=True)
    max_occupants = models.PositiveSmallIntegerField()
    floor = models.PositiveSmallIntegerField()
    rooms = models.PositiveSmallIntegerField()
    is_disabled_access = models.BooleanField(default=False)
    balcony_quantity = models.PositiveSmallIntegerField()
    building = models.ForeignKey(Building)
    recomended_price = models.DecimalField(max_digits=7, decimal_places=2)

每个单位都具有在属性表

中定义的所有属性
class Property1(CommonInfo):
    unit = models.ForeignKey(Unit)
    is_true = models.BooleanField(default=False)
    propertytype = models.ForeignKey(Propertytype, related_name='propertytype')
    date = models.DateTimeField(null=True, blank=True)
    followup_date = models.DateTimeField(null=True, blank=True)
    quantity = models.PositiveSmallIntegerField()

有没有办法大规模创建具有默认值的所有单位的所有属性?

1 个答案:

答案 0 :(得分:2)

如果这是测试代码,请使用工厂男孩RelatedFactory进行测试。见here避免使用固定装置

如果这是您需要对预先存在的数据执行的一次性任务,请编写数据迁移。见here

如果您希望在创建Unit时自动执行此操作,请使用 post_save信号处理程序执行此操作。见here