猿问

在 flask-admin 中编辑 hybrid_property 字段

我试图在 中包含可编辑的 hybrid_property 字段flask-admin,但它们没有显示在创建或编辑视图中。它们确实显示在列表视图中。我尝试过设置ignore_hidden=False,但这不起作用。我究竟做错了什么?


class TestTable(db.Model):

    __tablename__ = "test_table"

    id = db.Column(db.Integer, primary_key=True)


    _test_column = db.Column(db.String)


    @hybrid_property

    def test_column(self):

        return self._test_column


    @test_column.setter

    def test_column(self, test_column):

        self._test_column = test_column



class TestModelView(ModelView):

    ignore_hidden = False



admin = Admin(app, name="TestHybrid")

admin.add_view(TestModelView(TestTable, db.session))


MMMHUHU
浏览 150回答 1
1回答

元芳怎么了

您可以通过将test_column添加到form_extra_fields使其可编辑,如下所示:from wtforms.fields import StringFieldclass TestModelView(ModelView):    form_extra_fields = {        'test_column': StringField('test_column')    }在管理面板中保存值为“test1”的测试一后:>>> TestTable.query.all()[-1]._test_column'test1'>>> TestTable.query.all()[-1].test_column'test1'test_column字段在编辑和创建视图中可见。
随时随地看视频慕课网APP

相关分类

Python
我要回答