Django:隐藏空的单选按钮选项,但仍然允许它不为空



我有一个在多个页面上使用的大型模型。我在 forms.py 文件中使每个页面都成为单独的表单。在后来的一些表单页面上,我包括单选按钮。根据我在Google上看到的情况,隐藏空单选按钮选项的唯一方法是使单选按钮列表成为必需的。就我而言,我在模型中按以下方式执行此操作:enlistment_date_known = models.CharField(max_length=10, choices=BOOL_CHOICES, blank=False, default=None)

问题是这些单选按钮位于表单的第四页上,因此当我提交表单的第一页时,出现以下错误:

('23000', "[23000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Cannot 
insert the value NULL into column 'enlistment_date_known', table 
'LSPIntake_lonesoldier'; column does not allow nulls. INSERT fails. (515) 
(SQLExecDirectW); [23000] [Microsoft][ODBC Driver 17 for SQL Server][SQL 
Server]The statement has been terminated. (3621)")

有没有办法允许我的单选按钮的值在数据库中为空,但仍隐藏第一个空白选项? 也许通过制作表单中所需的单选按钮而不是模型?

我明白了!

除了其他参数之外,我刚刚添加了null=True。 现在,模型中的字段声明如下所示:

enlistment_date_known = models.CharField(max_length=10, choices=BOOL_CHOICES, blank=False, null=True, default=None)

如果有人能解释一下这一点,将不胜感激。不确定我是否完全理解空白和空之间的区别。

相关内容

最新更新