2016-08-02 46 views
0

我用的燒瓶管理員與ModelViews瓶管理員編輯列發送請求

class MyModel(ModelView): 
    can_create = False 
    can_edit = True 
    column_list = ['column'] 

這讓我編輯各行上的數據。不過,我想執行一些自定義功能,除了編輯。我試圖添加一個編輯路線,但它覆蓋了現有的功能。

@app.route('/admin/mymodelview/edit/', methods=['POST']) 
def do_something_in_addition(): 
    ... 

有什麼方法可以擴展現有的編輯功能嗎?

回答

1

覆蓋視圖類中的after_model_change方法或on_model_change方法。

例如:

class MyModel(ModelView): 
    can_create = False 
    can_edit = True 
    column_list = ['column'] 

    def after_model_change(self, form, model, is_created): 
     # model has already been commited here 
     # do custom work 
     pass 

    def on_model_change(self, form, model, is_created) 
     # model has not been commited yet so can be changed 
     # do custom work that can affect the model 
     pass