python - 表单字段API?

标签 python django django-forms

我正在遍历表单字段列表。如何识别每个字段的类型?对于复选框,我可以调用 field.is_checkbox...对于列表、多选字段等是否有类似的方法?

谢谢

最佳答案

查看表单上每个字段的类:

for f_name, f_type in my_form_instance.fields.items():
    print "I am a ",type(f_type)
    # or f_type.__class__

这将产生类似于 <class 'django.forms.fields.BooleanField'> 的输出.

如果您愿意,您可以使用简单字符串的形式获取名称:

print type(f_type).__name__
# produces 'BooleanField'

编辑:还要注意字段和小部件之间的区别。 Django 中没有 Checkbox 字段,只有一个 CheckboxInput 小部件,这是 BooleanField 的默认值。您的意思是查找小部件(这是非常特定于渲染的)还是字段(与该表单字段的数据类型和验证有更多关系)?如果是小部件,您可以使用以下方式获取小部件类型:

f_type.widget

希望有帮助!

关于python - 表单字段API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/627583/

相关文章:

python - 同时编辑两个具有外键关系的 Django 模型的表单

python - Python 单元测试自动生成数据

python /OpenCV : Converting images taken from capture

python - 动态报告的 Django 和 reportlab 问题

django 购物车初学者

python - 如何从表单集中删除表单

python - 如何提取处于隐藏可见性模式的文本?

python - MinMaxScaler 的奇怪输出

django - 如何查找 celery 队列中未处理消息的数量

python - <object> 不是 JSON 可序列化的 django