我有一个带有RegexField
的Django表单,它非常类似于普通的文本输入字段。
在我看来,在某些情况下,我想对用户隐藏它,并尽量保持表单的相似性。将此字段转换为HiddenInput
字段的最佳方法是什么?
我知道我可以通过以下设置字段的属性:
form['fieldname'].field.widget.attr['readonly'] = 'readonly'
我可以设置所需的初始值:
form.initial['fieldname'] = 'mydesiredvalue'
但是,这不会改变小部件的形式。
什么是使这个字段成为<input type="hidden">
字段的最佳/最“django-y”或最不“hacky”的方法?
这也可能有用:
{{ form.field.as_hidden }}
一个对我有用的选项,将原始表单中的字段定义为:
当你在新的类中重写它时,它会保留它的位置。
如果有自定义模板和视图,则可以排除该字段并使用
{{ modelform.instance.field }}
获取值。此外,您可能更喜欢在视图中使用:
但我不确定它是否能在邮件中保护保存方法。
希望有帮助。
相关问题 更多 >
编程相关推荐