在Flask提供了一个扩展模块帮助我们快速搭建一个后台管理系统,这个模块就是--Flask-Admin
首先需要运行下面的代码来初始化这个模块
admin = Admin(app=app, name='后台管理系统')
if __name__ == '__main__':
app.run(debug=True)
接下来在浏览器上访问http://0.0.0.0:9537/admin
现在这个后台管理还是空的。 下面我们一点一点的填充需要的功能。
数据库管理
from flask_admin.contrib.sqla import ModelView
class MyModelView(ModelView):
def is_accessible(self):
return current_user.has_role('Admin')
def inaccessible_callback(self, name, **kwargs):
# redirect to login page if user doesn't have access
return redirect(url_for('login', next=request.url))
# 初始化Flask-Admin
admin = Admin(app, name='env manager')
admin.add_view(MyModelView(User, db.session))
admin.add_view(MyModelView(Role, db.ses