【问题标题】:Flask how to make a field read-only via appbuilder烧瓶如何通过appbuilder使字段只读
【发布时间】:2018-12-12 15:05:24
【问题描述】:

我用什么替换文本字段,我知道我用我试图使其只读的字段替换 field2。我得到了:

NameError: name *'TextField' is not defined*

像这样定义/覆盖只读字段,首先定义一个新的只读字段:

from flask_appbuilder.fieldwidgets import BS3TextFieldWidget

class BS3TextFieldROWidget(BS3TextFieldWidget):
    def __call__(self, field, **kwargs):
        kwargs['readonly'] = 'true'
        return super(BS3TextFieldROWidget, self).__call__(field, 
**kwargs)

接下来使用您的新小部件覆盖您的字段:

class ExampleView(ModelView):
    datamodel = SQLAInterface(ExampleModel)
    edit_form_extra_fields = {'field2': TextField('field2',
                                widget=BS3TextFieldROWidget())}

【问题讨论】:

    标签: python flask flask-appbuilder


    【解决方案1】:

    确保在文件顶部声明了它

    from wtforms.fields import TextField

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-20
      • 1970-01-01
      • 2016-01-23
      • 1970-01-01
      • 2018-09-12
      • 2013-04-25
      • 2013-03-18
      相关资源
      最近更新 更多