3 回答

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊
“choices”字段屬性不能是動(dòng)態(tài)的,必須是靜態(tài)集,例如:
MONTH_CHOICES = (
("JANUARY", "January"),
("FEBRUARY", "February"),
("MARCH", "March"),
# ....
("DECEMBER", "December"),
)
如果您需要此限制,您可以在“django 表單”或“DRF 序列化程序”邏輯中驗(yàn)證這種情況。

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超6個(gè)贊
雖然我還沒(méi)有找到原始問(wèn)題的答案,但我已經(jīng)解決了根本問(wèn)題。這樣做的方法是將模型字段定義為外鍵:
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 參數(shù)與原始帖子中的 User.objects.filter(groups__name='Testmanager') 執(zhí)行相同的操作。需要 related_name 參數(shù),因?yàn)槲椰F(xiàn)在在同一模型上有兩個(gè)外鍵字段。
添加回答
舉報(bào)