3 回答

TA贡献1866条经验 获得超5个赞
“choices”字段属性不能是动态的,必须是静态集,例如:
MONTH_CHOICES = (
("JANUARY", "January"),
("FEBRUARY", "February"),
("MARCH", "March"),
# ....
("DECEMBER", "December"),
)
如果您需要此限制,您可以在“django 表单”或“DRF 序列化程序”逻辑中验证这种情况。

TA贡献1848条经验 获得超6个赞
虽然我还没有找到原始问题的答案,但我已经解决了根本问题。这样做的方法是将模型字段定义为外键:
class TestPlan(models.Model):
tp_title = models.CharField(max_length=200, verbose_name='Title')
tp_manager = models.ForeignKey(User, on_delete=models.SET_NULL,
blank=True, null=True, verbose_name='Test Manager',
limit_choices_to={'groups__name': 'Testmanager'},
related_name='testmanager_set')
tp_tester = models.ForeignKey(User, on_delete=models.SET_NULL,
blank=True, null=True, verbose_name='Tester')
limit_choices_to 参数与原始帖子中的 User.objects.filter(groups__name='Testmanager') 执行相同的操作。需要 related_name 参数,因为我现在在同一模型上有两个外键字段。
添加回答
举报