对 python 和 django 如此陌生,在一个项目上进展顺利,但找不到上述问题的任何简单答案:
模型是这样的
class Projects(models.Model):
project_name = models.CharField(max_length=200)
project_description = models.TextField(blank=True)
active = models.BooleanField()
def __unicode__(self):
return self.project_name
我有其他将上述称为 ForignKey 的模型
class Estimates(models.Model):
client = models.ForeignKey(Clients)
estimate_summary = models.CharField(max_length=200,blank=True)
project = models.ForeignKey(Projects,default=-1,blank=True)
我知道我可以设置blank=False
以确保我得到一个有效的选择,但是我想允许他们选择不将项目分配给估计值,在这种情况下我会存储一个默认整数 -1 或其他东西。
但是问题是我不知道如何让表单使用整数作为默认值而不是“”<-(空字符串)
<option selected="selected" value="">---------</option>
<option value="1">Sample Project</option>
我看到的所有问题和答案都围绕着将其更改---------
为其他文本或强迫您一起删除空白选项。我只是想
<option selected="selected" value="-1">---------</option>
所以我的表格将验证
写完问题后,我想知道是否可以自己插入一个选项并empty_label=None
在添加到表单时使用
field2 = forms.ModelChoiceField(queryset=..., empty_label=None)