更改pythonwtforms中的字段名

2024-06-16 13:46:26 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我得到了一个重复的字段行的表单,它的定义如下:

class SimpleDataRow(Form):
    title = StringField('Title')
    label = StringField('Name')


class SimpleDataForm(Form):
    fields = FieldList(FormField(SimpleDataRow))

在此之后,我初始化表单,并将一些条目与相应的数据附加到其中:

^{pr2}$

然后我想将字段呈现到浏览器中,但是由于WTForms中的字段命名,我遇到了一些麻烦。呈现时,字段被分配一个名称和id fields-0-title&;fields-0-label,并且对于每一行数据,0递增1。在

我更希望WTForm获取field对象的ID,并在为字段分配名称和ID时使用它。我的field对象如下所示:

class Field(Base):
    __tablename__ = 'sys_fields'
    id = Column(Integer, primary_key=True)
    label = Column(String(64))
    title = Column(String(64))

那么,有没有办法改变WTForms用来命名字段列表中字段的模式呢?理想情况下,我想要这样的命名模式:{prefix_}{label}_{id}


Tags: 数据form名称id表单fieldfieldstitle