大佬教程收集整理的这篇文章主要介绍了在 Django 中向 ChoiceField 添加占位符?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的 forms.py 中,我定义了一个简单的表单类:
SAMPLE_StriNGS = ['aa','ab','bb','c0']
class InDicatorForm(forms.Form):
chosen_number = forms.IntegerFIEld(label='Please SELEct a value')
chosen_String = forms.ChoiceFIEld(choices=SAMPLE_StriNGS,label='Please SELEct a String',required=TruE)
我想为两个字段添加一个占位符。对于第一个,很简单:
chosen_number = forms.IntegerFIEld(label='Please SELEct a value',Widget=forms.numberinput(attrs={'placeholder': 0}))
但是对于ChoiceFIEld,我没有任何运气。我尝试使用 Widget=forms.TexTinput(attrs=...)
但这会删除选项并将字段转换为简单的文本字段。 Widget=forms.Choiceinput
和 Widget=forms.ChoiceFIEld
也不起作用。
如何向我的 ChoiceFIEld 添加一个显示“选择...”的占位符?
对于 @H_835_5@modelChoiceField Django 会自动执行此操作并为您提供可选的覆盖参数 empty_label
。
对于 ChoiceField
,您必须手动添加空标签。如果您想要相同的默认空标签,我们可以通过 copying what Django does 插入:
from django.db.models.fields import BLANK_CHOICE_DASH
...
chosen_String = forms.ChoiceField(choices=BLANK_CHOICE_DASH + SAMPLE_StriNGS,label='Please SELEct a String',required=TruE)
对于自定义空标签,您只需在 SAMPLE_StriNGS
列表中添加一个二元组:
SAMPLE_StriNGS = [('','My empty label'),'aa','ab','bb','c0']
二元组确保生成的 value=""
中的 <option>
。
以上是大佬教程为你收集整理的在 Django 中向 ChoiceField 添加占位符?全部内容,希望文章能够帮你解决在 Django 中向 ChoiceField 添加占位符?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。