欢迎访问宙启技术站
智能推送

使用Flask_Admin和Python快速搭建管理系统

发布时间:2023-12-11 08:33:13

Flask-Admin是一个用于快速搭建管理系统的开源Python库。它基于Flask框架,提供了一系列的界面组件和工具,可以方便地生成和管理后台管理界面。下面我们将详细介绍如何使用Flask-Admin搭建一个简单的管理系统,并提供一个示例供参考。

首先,我们需要安装Flask-Admin库。可以使用pip命令来安装:

pip install flask-admin

安装完成后,我们可以开始编写代码。首先,导入Flask、SQLAlchemy等必要的库:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_admin import Admin
from flask_admin.contrib.sqla import ModelView

接下来,我们创建一个Flask应用,并进行一些必要的配置:

app = Flask(__name__)

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'
app.config['SECRET_KEY'] = 'your_secret_key'

db = SQLAlchemy(app)
admin = Admin(app, name='Admin', template_mode='bootstrap3')

这里我们指定了一个SQLite数据库,并设置了一个秘钥。同时,我们创建了一个Admin对象,并指定了模板使用的样式。

然后,我们定义一个数据模型。这里我们创建一个名为User的数据库表,包含id和name两个字段:

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(80))

接下来,我们创建一个继承自ModelView的视图类,用于配置管理界面:

class UserView(ModelView):
    column_searchable_list = ['name']
    column_filters = ['name']
    form_columns = ['name']

这里我们指定了可搜索的字段、可过滤的字段,以及表单中显示的字段。

然后,我们将数据模型和视图类注册到管理系统中:

admin.add_view(UserView(User, db.session))

最后,我们创建一个首页路由,返回一个简单的界面:

@app.route('/')
def index():
    return 'Hello World'

if __name__ == '__main__':
    app.run(debug=True)

这样就完成了一个简单的管理系统的搭建。我们可以通过访问http://localhost:5000/admin来查看管理界面,这里可以对数据库中的User表进行增删改查操作。

以上是一个简单的使用Flask-Admin搭建管理系统的示例。在实际使用中,我们可以根据需求进行更加复杂的配置和定制,以满足具体的管理需求。Flask-Admin提供了丰富的界面组件和工具,可以大大简化管理系统的开发过程。