OneToOne 的妈妈食谱

mommy Recipe with OneToOne

我正在使用 model_mommy 和 Django 来创建测试对象。我想实现 Recipe 功能。我有一个模型 Teacher 和一个模型 TeacherSchedule:

Teacher(models.Model):
   some fields ...


TeacherSchedule(models.Model):
   teacher = models.OneToOneField(
        'Teacher',
        on_delete=models.CASCADE,
        related_name='schedule',
    )
   some fields...

我当时尝试使用的食谱:

schedule = Recipe(
    TeacherSchedule,
)

teacher_with_schedule = Recipe(
    Teacher,
    schedule=foreign_key('schedule'),
)

但是,当我 运行 我的测试时,似乎没有创建 TeacherSchedule 对象。 Recipe 我是不是做错了什么?

您需要从 'schedule' 中删除 '':

schedule = Recipe(
    TeacherSchedule,
)

teacher_with_schedule = Recipe(
    Teacher,
    schedule=foreign_key(schedule),
)

此外,建议您使用更新版的 Model Mommy,现在称为 Model Bakery