定制flask-admin的主页

flask也用了很久了,一般配合flask-admin设置后台。

但是flask-admin设置的都是自己加入的,对某些model进行管理。

下面介绍如何定制flask-admin的首页。

 

原来我们引入flask-admin

是这么写的

admin = Admin(app)

现在要写更多参数了。

例1:
admin = Admin( app, name='导航管理', index_view=MyAdminIndexView(name='预览页'), template_mode='bootstrap3' )

继续查看源码

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

继续看例1的index_view,我使用了自定义类MyAdminIndexView,其实它是继承自AdminIndexView。

复制代码
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)
复制代码

注意:平时我们用的都是

 

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 %}
复制代码

这里使用了模板和嵌套。

 

作者:上官飞鸿

出处:https://www.cnblogs.com/jackadam/p/11708180.html

版权:本作品采用「知识共享-署名-非商业性-禁止演绎(CC-BY-NC-ND)」许可协议进行许可。

posted @   上官飞鸿  阅读(2421)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2018-10-20 flask-session 在redis中存储session
more_horiz
keyboard_arrow_up light_mode palette
选择主题
点击右上角即可分享
微信分享提示