用flask-admin写一个文件管理系统的程序-第1课

简介: 用flask-admin写一个文件管理系统的程序-第1课

Flask-Admin 后台管理


Flask-Admin是一个简单易用的Flask扩展,可以为Flask应用程序增加管理界面。


1、安装扩展

先用pip 安装flask-admin扩展 pip install flask-admin


2、有点不同的是,import时,是import:    flask.ext.admin   或者import flask_admin

第一个manage.py,或者helloadmin.py


from flask import Flask
from flask_admin import Admin, BaseView, expose
app = Flask(__name__)
admin = Admin(app,name='后台管理系统')
app.run()


这里把name加上了,会看见一个标题。

20190415120317890.png


运行它 python manage.py,  在浏览器地址栏输入localhost:5000/admin 或者把localhost替换为127.0.0.1,可以看见一个光秃秃的运行界面如上图。


3、加点东西(标签)


现在,创建一个新的index.html文件并写入如下内容:

{% extends 'admin/master.html' %}
{% block body %}
    Hello World from MyView!
{% endblock %}


然后把它放到templates目录。为维持一致的外观和感觉,所有管理页面应该延伸于admin/master.html模板。


目录结构是:


manage.py
templates-index.html

再次运行程序,刷新,现在应该看到Hello页面的新的管理页面起作用了。点击这个标签。



2019041512154364.png



4、添加第2级目录

写另一个view,让它也继承BaseView,不过显示的东西不同:

 

class MyViewCate2(BaseView):
        #这里类似于app.route(),处理url请求
        @expose('/')
        def index(self):
            return self.render('index2.html')


index2.html如下:

1. {% extends 'admin/master.html' %}
2. #为了保持一致,继承adminmaster.html模板
3. 
4. {% block body %}
5. 
6. 欢迎来到第2层
7. 
8. {% endblock %}



OK,现在再加入这个层级的view:

 

admin.add_view(MyViewCate2(name='Hello 1', endpoint='test1', category='Test'))
    admin.add_view(MyViewCate2(name='Hello 2', endpoint='test2', category='Test'))
    admin.add_view(MyViewCate2(name='Hello 3', endpoint='test3', category='Test'))


重新运行,刷新,应该看到:20190415122248399.png


2019041512231949.png

我们就先完成了一个添加目录、标签的网页,好快啊是不是?可以通过http://127.0.0.1:5000/admin/test1 访问它。全部代码如下:

from flask import Flask
from flask.ext.admin import Admin, BaseView, expose
#from flask_admin import Admin, BaseView, expose
class MyView(BaseView):
#这里类似于app.route(),处理url请求
    @expose('/')
    def index(self):
        return self.render('index.html')
class MyViewCate2(BaseView):
    #这里类似于app.route(),处理url请求
    @expose('/')
    def index(self):
        return self.render('index2.html')
app = Flask(__name__)
admin = Admin(app,name="后台管理系统")
# Add administrative views here
admin.add_view(MyView(name='Hello'))
admin.add_view(MyViewCate2(name='Hello 1', endpoint='test1', category='Test'))
admin.add_view(MyViewCate2(name='Hello 2', endpoint='test2', category='Test'))
admin.add_view(MyViewCate2(name='Hello 3', endpoint='test3', category='Test'))
app.run()
目录
相关文章
|
6月前
|
机器学习/深度学习 存储 算法
基于Flask+Bootstrap+机器学习的世界杯比赛预测系统
基于Flask+Bootstrap+机器学习的世界杯比赛预测系统
96 0
|
6月前
|
机器学习/深度学习 数据采集 算法
基于Flask+Bootstrap+机器学习的南昌市租房价格预测系统(上)
基于Flask+Bootstrap+机器学习的南昌市租房价格预测系统
148 0
|
4月前
|
监控 前端开发 API
实战指南:使用Python Flask与WebSocket实现高效的前后端分离实时系统
【7月更文挑战第18天】构建实时Web应用,如聊天室,可借助Python的Flask和WebSocket。安装Flask及Flask-SocketIO库,创建Flask应用,处理WebSocket事件。前端模板通过Socket.IO库连接服务器,发送和接收消息。运行应用,实现实时通信。此示例展现了Flask结合WebSocket实现前后端实时交互的能力。
459 3
|
2月前
|
安全 数据安全/隐私保护 Python
基于Flask框架实现一个简易后台用户登录系统
基于Flask框架实现一个简易后台用户登录系统
|
2月前
|
人工智能 安全 数据安全/隐私保护
基于Flask框架实现一个简易后台用户登录系统
基于Flask框架实现一个简易后台用户登录系统
|
3月前
|
数据采集 自然语言处理 数据可视化
优秀python系统案例】基于python Flask的电影票房数据爬取与可视化系统的设计与实现
本文介绍了一个基于Python Flask框架开发的电影票房数据爬取与可视化系统,该系统利用网络爬虫技术从豆瓣电影网站抓取数据,通过Python进行数据处理和分析,并采用ECharts等库实现数据的可视化展示,为电影行业从业者提供决策支持。
214 2
优秀python系统案例】基于python Flask的电影票房数据爬取与可视化系统的设计与实现
|
3月前
|
数据可视化 前端开发 数据挖掘
Python +flask+echart实现高校数据分析可视化系统
该博客文章介绍了如何使用Python、Flask框架和ECharts库实现高校数据分析可视化系统,包括工程创建、数据可视化和页面展示等步骤。
103 2
Python +flask+echart实现高校数据分析可视化系统
|
3月前
|
数据采集 数据可视化 关系型数据库
【优秀python web设计】基于Python flask的猫眼电影可视化系统,可视化用echart,前端Layui,数据库用MySQL,包括爬虫
本文介绍了一个基于Python Flask框架、MySQL数据库和Layui前端框架的猫眼电影数据采集分析与可视化系统,该系统通过爬虫技术采集电影数据,利用数据分析库进行处理,并使用Echart进行数据的可视化展示,以提供全面、准确的电影市场分析结果。
108 4
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
【优秀python系统毕设】基于Python flask的气象数据可视化系统设计与实现,有LSTM算法预测气温
本文介绍了一个基于Python Flask框架开发的气象数据可视化系统,该系统集成了数据获取、处理、存储、LSTM算法气温预测以及多种数据可视化功能,旨在提高气象数据的利用价值并推动气象领域的发展。
122 1
|
3月前
|
存储 数据采集 数据可视化
基于Python flask+MySQL+echart的电影数据分析可视化系统
该博客文章介绍了一个基于Python Flask框架、MySQL数据库和ECharts库构建的电影数据分析可视化系统,系统功能包括猫眼电影数据的爬取、存储、展示以及电影评价词云图的生成。