django - 从 Django 表单中清除“ChoiceField”
问题描述
模型:
class SocialGroup(models.Model):
INDIVIDUAL = 'individual'
INSTITUTE = 'institute'
options = ((INDIVIDUAL, 'Individual'),
(INSTITUTE, 'Institute'))
level = models.CharField(choices=options, max_length=100)
def __unicode__(self):
return self.name
class Meta:
ordering = ['name']
形式:
class GroupLevelForm(forms.Form):
level = forms.ChoiceField(choices=SocialGroup.options)
def clean_level(self):
return self.cleaned_data['level']
当我打电话给我的表格时,我会这样做level = GroupLevelForm({level: 'Individual'})
。我想individual
回到清理后的数据。
- 我在表单中传递了外部名称,如何取回
choice field
. - 例如:
options = (('internal, 'External'),)
当我这样做时,我level = GroupLevelForm({level: 'External'})
怎么能internal
进去cleaned_data
。
提前致谢!
解决方案
发生错误是因为您没有is_valid()
在任何时候调用您的表单。cleaned_data
仅在被调用后才存在。
你想要一些类似于[伪代码传入]的东西:
def clean_fields():
if form.is_valid():
self.cleaned_data['level']
有关 django 的解释,请参阅文档:构建表单
推荐阅读
- docker - 如何使用 SSL 记录太长错误在 DDEV Windows 10 pro localhost 上访问 phpmyadmin
- c - 如何将标准输出数据传递给变量c?
- android - pyqtdeploy 不会创建项目文件
- python - 这段代码的过程是什么,为什么答案是1?
- php - Wordpres REST API:如何检查 url 上是否存在 id
- lua - LUA 错误论点 #2
- javascript - 如何将其他内容替换为自定义单词
- c - Switch 语句错误 **控制到达非 void 函数的结尾 [-Werror=return-type]**
- html - ionic 4 离子选择选项文本换行
- javascript - 如何在 HTML5 中添加“iframe”作为背景