Flask的图形化管理界面搭建框架Flask-Admin的使用教程
Flask-Admin是Flask框架的一个扩展,用它能够快速创建Web管理界面,它实现了比如用户、文件的增删改查等常用的管理功能;如果对它的默认界面不喜欢,可以通过修改模板文件来定制;
Flask-Admin把每一个菜单(超链接)看作一个view,注册后才能显示出来,view本身也有属性来控制其是否可见;因此,利用这个机制可以定制自己的模块化界面,比如让不同权限的用户登录后看到不一样的菜单;
项目地址:https://flask-admin.readthedocs.io/en/latest/
example/simple
这是最简单的一个样例,可以帮助我们快速、直观的了解基本概念,学会定制Flask-Admin的界面
simple.py:
fromflaskimportFlask fromflask.extimportadmin #Createcustomadminview classMyAdminView(admin.BaseView): @admin.expose('/') defindex(self): returnself.render('myadmin.html') classAnotherAdminView(admin.BaseView): @admin.expose('/') defindex(self): returnself.render('anotheradmin.html') @admin.expose('/test/') deftest(self): returnself.render('test.html') #Createflaskapp app=Flask(__name__,template_folder='templates') app.debug=True #Flaskviews @app.route('/') defindex(): return'<ahref="/admin/">ClickmetogettoAdmin!</a>' #Createadmininterface admin=admin.Admin() admin.add_view(MyAdminView(category='Test')) admin.add_view(AnotherAdminView(category='Test')) admin.init_app(app) if__name__=='__main__': #Startapp app.run()
在这里可以看到运行效果
BaseView
所有的view都必须继承自BaseView:classBaseView(name=None,category=None,endpoint=None,url=None,static_folder=None,static_url_path=None)