定製flask-admin的主頁

flask也用了好久了,通常配合flask-admin設置後臺。html

可是flask-admin設置的都是本身加入的,對某些model進行管理。flask

下面介紹如何定製flask-admin的首頁。bootstrap

 

原來咱們引入flask-adminapp

是這麼寫的url

admin = Admin(app)

如今要寫更多參數了。spa

例1:
admin = Admin( app, name='導航管理', index_view=MyAdminIndexView(name='預覽頁'), template_mode='bootstrap3' )

繼續查看源碼code

self.index_view = index_view or AdminIndexView(endpoint=endpoint, url=url)

繼續看例1的index_view,我使用了自定義類MyAdminIndexView,其實它是繼承自AdminIndexView。htm

class MyAdminIndexView(AdminIndexView):
    @expose('/')
    def default(self):
        plan = [
            {
                'date': '20171212',
                'train': 'T198',
                'track': '8'
            },
            {
                'date': '20171212',
                'train': 'T199',
                'track': '9'
            },
            {
                'date': '20171212',
                'train': 'T197',
                'track': '7'
            },
            {
                'date': '20171212',
                'train': 'T196',
                'track': '6'
            }
        ]
  
return self.render('admin.html', plans = plan)

注意:平時咱們用的都是blog

 

return render_template('admin.html')

 

在flask-admin中,咱們使用繼承

return self.render('admin.html', plans = plan)

另附admin.html

{% extends 'admin/index.html' %}
{% block body %}
    Hello World from MyView!
    {% for plan in plans %}
        {{ plan.date }}
        {{ plan.train }}
        {{ plan.track }}
        <br>
    {% endfor %}
{% endblock %}

這裏使用了模板和嵌套。

相關文章
相關標籤/搜索