我认为这可能是 Django 1.2 中 modelformset_factory 中的一个错误,但我希望其他人仔细检查一下(也可能在较新的 djnago 版本中)。
只为有兴趣的人 - 模型代表可能的分数,以及可用于工人培训报告的分数集。
模型.py:
class ScoreSet(Model):
unit = ForeignKey(Unit)
description = CharField(max_length=20, verbose_name='description')
class Score(Model):
scoreset = ForeignKey(ScoreSet)
score = CharField(max_length=8, verbose_name='score')
description = CharField(max_length=30, verbose_name='description')
现在:
FormSet = modelformset_factory(Score, exclude='scoreset', extra=5, can_delete=True)
将生成没有分数集和分数字段的表单集。如果您将“scoreset”字段名称更改为其他任何名称(例如“ss”),它可以正常工作,并且仅排除“ss”字段。