tam*_*are 10 django django-forms
据我所知,默认情况下,Django 在使用格式渲染时自动填充每个表单字段的idid_for_%s.可以通过提供auto_id具有不同格式的参数作为Form构造函数的值来修改格式.
然而,这并不是我想要的.我想要完成的是改变我表单中许多字段之一的id.此外,解决方案不应该打破使用form = MyForm(request.POST).
PS.MyForm是一个模型形式,因此每个id都来自其相应的Model字段.
谢谢你的帮助.
Yuj*_*ita 17
表单框架似乎在这里生成标签:
def _id_for_label(self):
    """
    Wrapper around the field widget's `id_for_label` class method.
    Useful, for example, for focusing on this field regardless of whether
    it has a single widget or a MutiWidget.
    """
    widget = self.field.widget
    id_ = widget.attrs.get('id') or self.auto_id
    return widget.id_for_label(id_)
id_for_label = property(_id_for_label)
这意味着您可以使用"id"键为您的字段小部件提供设置为您想要的任何内容.
foo = forms.CharField(widget=forms.TextInput(attrs={'id': 'foobar'}))
或覆盖init并在表单初始化后设置attrs.
我不知道这会如何破坏表格,因为django的表单框架并不知道HTML ID(数据没有传递给服务器......)
| 归档时间: | 
 | 
| 查看次数: | 8594 次 | 
| 最近记录: |