所有物体的外键? Django的

时间:2014-10-02 17:50:33

标签: django django-models django-admin

我已经尝试过这方面的文档,但我似乎无法接近我想要做的事情。

我想为清单创建一个模型,该模型具有易于更新的清单项目。我希望我们的人力资源部门能够通过管理面板轻松添加核对表项目,并将它们自动附加到每个NewHireChecklist。

我在这里:

class NewHireChecklist(models.Model):
    employee = models.ForeignKey(Employee)
    created = models.DateTimeField(auto_now_add=True)

    def __unicode__(self):
         return 'Checklist - %s %s' % (self.employee.fName, self.employee.lName)

class NewHireChecklistItem(models.Model):
    checklist = models.ForeignKey(NewHireChecklist)
    name = models.CharField(max_length=300)
    description = models.TextField(blank=True, null=True)
    completed = models.BooleanField(default=False)

    def __unicode__(self):
        return self.name

但是,我希望清单自动应用于每个NewHireChecklist对象,而不仅仅是我明确指定的对象。

有关程序的任何想法?我是以完全错误的方式思考这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您不需要一对多的字段,但需要多对多的字段。您希望多个清单在同一清单中包含相同的项目和多个项目。

只需创建多对多并覆盖模型上的save()即可添加所有现有的检查列表项。