使用与ID

时间:2018-05-14 00:47:11

标签: flask-admin

我有一个Order对象,ID为5的Order对象的编辑界面如下所示:/ admin / order / edit /?id = 8&amp; url =%2Fadmin%2Forder%2F < / p>

如果我在Order对象上有一个名为invoice的字段,是否可以使用发票字段在编辑屏幕上使用URL结束点?

1 个答案:

答案 0 :(得分:0)

通常,使用 column_extra_row_actions ,您可以创建一个接受 row_id (在您的情况下为Order.ID)作为参数的操作,并且您可以指定一个将获取'发票'。

或者,您可以向数据库中不存在的视图添加一个额外的列,并使用适当的链接填充它。

from flask import Markup

class MyModelView(ModelView):        
    ....
    column_list = ['edit link'] + the_rest_of_columns_you_display
    column_formatters = {'edit link': lambda v, c, m, n: Markup('''
            <a href='/admin/order/edit/?invoice=%d'>Edit</a>
        ''' % m.invoice }

此外,您需要覆盖edit_view function,以便它接受您需要的任何参数以及相应的模板。