我正在尝试通过构建CMS了解有关Flask的更多信息。我正在使用flask-admin添加帖子,图像等。
我设法用ckeditor覆盖textarea 。但是我想将静态文件夹中图像的路径传递给ckeditor图像插件。
我不知道如何将参数传递给我的edit.html模板。
这是代码:
class TestAdmin(ModelView): form_overrides = dict(text=forms.CustomTextAreaField) create_template = 'edit.html' edit_template = 'edit.html'
从flask-admin的文档中,我发现_template_args可以将参数传递给模板。但是我不知道怎么做。
_template_args
确切的方法是什么?
你必须重写视图才能更改_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()
如果要将某些全局值传递给模板,则可以使用context_processor(http://flask.pocoo.org/docs/templating/#context-processors)。
context_processor
@app.context_processor def inject_paths(): # you will be able to access {{ path1 }} and {{ path2 }} in templates return dict(path1='x', path2='y')