Passing Arguments to ModelView edit template in flask-admin Passing Arguments to ModelView edit template in flask-admin flask flask

Passing Arguments to ModelView edit template in flask-admin


You have to override the views to change _template_args.

class TestAdmin(ModelView):    form_overrides = dict(text=forms.CustomTextAreaField)    create_template = 'edit.html'    edit_template = 'edit.html'    @expose('/edit/', methods=('GET', 'POST'))    def edit_view(self):         self._template_args['foo'] = 'bar'         return super(TestAdmin, self).edit_view()

If you want to pass some global value to templates, you can use a context_processor (http://flask.pocoo.org/docs/templating/#context-processors).

@app.context_processordef inject_paths():    # you will be able to access {{ path1 }} and {{ path2 }} in templates    return dict(path1='x', path2='y')