基于请求的Django管理员自定义表单

时间:2017-03-21 13:33:31

标签: python django django-forms django-admin

我正在尝试使用基于request.user在提交时创建的选择字段为django管理区域中的模型创建自定义表单。然后,用户将从选择中进行选择,并将特定设置保存到模型中。

模特:

class Thing1(models.Model):
    user = models.ForeignKey(User)
    setting_1 = models.BooleanField(default=False)
    setting_2 = models.BooleanField(default=False)
    setting_3 = models.BooleanField(default=False)

但是我没有让用户手动设置设置字段,而是想显示一个选择:

- Default Settings
- Other Settings

用户将选择一个,系统将相应地保存设置布尔值。 select的实际选项取决于用户,因此我需要request.user才能构建该选择字段。我似乎无法访问ModelForm中的请求。

所以我知道我可以在django admin中从模型中排除设置字段,但是如何让表单在用户的选择选项中包含具有正确内容的select,然后让它保存正确的设置在模型中保存?

我已经阅读了一些关于自定义django管理员字段的其他问题并得到了一些想法,但没有清晰的图片。

0 个答案:

没有答案