比如我有个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的适配。。
1
9hills OP 今晚仔细看了下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 |