Python 在表中覆盖并保存新行

Python 在表中覆盖并保存新行,python,flask,flask-admin,Python,Flask,Flask Admin,在通过Flask中的管理面板在表中创建新行时,如何重写和添加一些额外代码? 例如:用户在“Post”表中输入新行的信息,然后单击“保存”。我想添加一些代码来使用新行信息自动化流程。显然,您可以在保存/更新新模型之前重写执行操作的方法,或者在保存/更新新模型之后重写执行操作的方法。 如果使用Flask SqlAchemy,则可以从类BaseModelView或ModelView继承 在每种情况下,都会提供3个参数:视图使用的表单、新的/更新的模型以及创建的标志,以了解模型是新的True还是更新的

在通过Flask中的管理面板在表中创建新行时,如何重写和添加一些额外代码?
例如:用户在“Post”表中输入新行的信息,然后单击“保存”。我想添加一些代码来使用新行信息自动化流程。

显然,您可以在保存/更新新模型之前重写执行操作的方法,或者在保存/更新新模型之后重写执行操作的方法。 如果使用Flask SqlAchemy,则可以从类BaseModelView或ModelView继承

在每种情况下,都会提供3个参数:视图使用的表单、新的/更新的模型以及创建的标志,以了解模型是新的True还是更新的

可以按如下方式定义模型视图:

from flask_admin import Admin
from flask_admin.contrib.sqla import ModelView

class PostView(ModelView):

    def after_model_change(self, form, model, is_created):
        print(form, model, is_created)

    def on_model_change(self, form, model, is_created):
        print(form, model, is_created)

admin = Admin(template_mode='bootstrap3')
admin.add_view(PostView(Post, db.session, name='Posts'))

注意:对于使用on_model_delete和after_model_delete删除零件,您可以使用类似的方法,除非您仅将模型作为参数提供。

这对我根本不起作用。“NoteView”也有一个错误。您没有提供任何代码来了解类的名称,必须更改此示例以匹配您自己的类。最终得到它:。没有NoteView