3

我正在尝试将变形用作金字塔的一部分,并且可以轻松获得完全可编辑或完全只读的表单,但我似乎找不到创建只读文本输入字段的方法。以下代码不符合我的要求,但我认为您应该能够看到我正在尝试做的事情:

class UserSchema(colander.MappingSchema):
    first_name = colander.SchemaNode(colander.String())
    last_name = colander.SchemaNode(colander.String())
    username = colander.SchemaNode(colander.String())
    password = colander.SchemaNode(colander.String())
    email = colander.SchemaNode(colander.String(), validator=colander.Email())
    organization_name = colander.SchemaNode(colander.String(), widget=deform.widget.TextInputWidget(readonly=True))
4

1 回答 1

4

使用只读模板:

organization_name = colander.SchemaNode(colander.String(), missing='', widget=deform.widget.TextInputWidget(template='readonly/textinput'))

您必须定义一个missing值,否则验证失败。

变形版本 0.9.6+:

此后变形已更新,readonly关键字参数应按预期工作。

于 2012-03-28T06:51:15.693 回答