python - Flask-Admin - 具有原始表单的自定义 View

标签 python flask flask-admin

我正在尝试在 Flask-Admin 中创建自定义编辑 View ,在其中使用原始编辑表单并向其中添加更多内容。

我想在我的模板中使用原始的:

{% extends 'admin/master.html' %}
{% import 'admin/lib.html' as lib with context %}

(...)

{% block edit_form %}
    {{ lib.render_form(form, return_url, extra(), form_opts) }}
{% endblock %}

但是我在将原始表单传递给自定义 View 中的 self.render(...) 函数时遇到问题:

class MyView(sqla.ModelView):
    # (view options)

    @expose('/edit/', methods=('GET', 'POST'))
    def edit_view(self):
        # (custom view variables)

        return self.render('my_edit_view.html')

我相信我必须在 self.render 函数中传递一些参数。我尝试包含 form = form 但它不起作用(TypeError: 'module' object is not iterable)...

有什么想法吗?

谢谢!!

最佳答案

通过这个答案找到了答案:https://stackoverflow.com/a/20714237/7811624

我认为在自定义 View 中使用原始表单和额外字段的正确方法是:

class MyView(sqla.ModelView):
    # (view options)
    edit_template = 'my_edit_view.html'

    @expose('/edit/', methods=('GET', 'POST'))
    def edit_view(self):
        # (custom view variables)
        # for the extra variables you wanna pass on to the template:
        self._template_args['foo'] = bar 

        return super(MyView, self).edit_view()

关于python - Flask-Admin - 具有原始表单的自定义 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49501599/

相关文章:

python - 向应用程序工厂注册 flask 管理 View 的正确方法

python-2.7 - Flask 管理员显示枚举值而不是名称

python - 使用 matplotlib 在 wxpython 面板中组合按键和鼠标按钮事件

python - 如何使用 Flask 在 Heroku 中显示标准输出日志?

javascript - 如何从外部 JS 文件调用 Python 函数?

html - 从 CSV/Flask 填充 Bootstrap 下拉按钮

python - 让 CKEditor 与 Flask Admin 一起工作

python - Matplotlib 自定义饼图标签和阴影

子进程返回码中的 Python 'return not' 语句

python - 有什么方法可以处理 DB uri 中的断开连接吗?