问个 Flask-Admin 的问题

2015-01-16 14:28:44 +08:00
 9hills

比如我有个Model是这样:

class A(db.Model):
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    content = db.Column(db.String(255))

    def __init__(self, a, b)
        self.content = a + b

默认设置的Admin界面中,Create时显示的表单是填content,如何修改为表单中填a和b,然后生成content?

按理说Admin应该自己搞定这个init的适配。。

3062 次点击
所在节点    Flask
1 条回复
9hills
2015-01-18 00:43:12 +08:00
今晚仔细看了下Flask-Admin的结构,只需要override sqla ModelView的三个方法:

scaffold_form() -- 重新定义表单
create_model() -- 修改create逻辑
update_model() -- 修改update逻辑

就可以了,具体直接看sqla的文档和代码:

http://flask-admin.readthedocs.org/en/v1.0.9/db_sqla/
https://github.com/mrjoes/flask-admin/blob/2b4bfe358d70d0681219b36359a78d503cf21d8c/flask_admin/contrib/sqla/view.py#L598

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/162699

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX