ITPub博客

首页 > 数据库 > 数据库开发技术 > Fastapi+SmartAdmin 项目开源简单说明

Fastapi+SmartAdmin 项目开源简单说明

原创 数据库开发技术 作者:程序员小钟同学 时间:2023-10-25 00:13:23 0 删除 编辑

首先本项目是简单后台权限管理的项目。整个技术栈是:

Fastapi+vue+Postgresql+peewee+SmartAdmin 等组成。本项目主要是个人经验组合而成,封装的有点过度,现在开源只是想提供给大家做相关的参考,如果有好的想法或问题,可以随时交流。本项目有点简单,有些小的问题在所难免咯,哈哈。希望个人看官笑纳~也可以喷~


本后台管理系统项目是一个基于Web的应用程序,旨在为企业和组织提供高效、可靠、安全的数据管理和处理功能。该项目使用了多种技术和工具,包括 FASTAPI(一个开源的API框架)、Vue.js(一个流行的JavaScript框架)、PostgreSQL(一个强大的关系型数据库管理系统)、Peewee(一个Python ORM库)以及SmartAdmin(一个现代化的UI框架),为用户提供了强大的数据管理和可视化功能。

该后台管理系统项目的主要功能包括数据管理、用户管理、权限管理、日志管理等。通过使用FASTAPI框架,该项目实现了RESTful API接口,将前端与后端进行了分离,使得前端和后端可以独立开发和部署。Vue.js作为前端框架,提供了丰富的组件和生态系统,使得前端开发更加高效和便捷。同时,Vue.js也提供了响应式的数据绑定和虚拟DOM等特性,使得前端页面可以更加快速地响应用户的操作。

PostgreSQL作为后端数据库管理系统,提供了强大的数据存储和查询功能,支持事务管理和ACID特性,保证了数据的一致性和可靠性。Peewee作为Python ORM库,提供了方便的数据库操作API,使得开发者可以更加快速地进行数据操作和查询。同时,Peewee也支持多种数据库后端,包括SQLite、MySQL、PostgreSQL等,使得该项目具有更好的可扩展性和兼容性。

SmartAdmin作为UI框架,提供了现代化的UI组件和布局,使得前端页面具有更好的可视化效果和用户体验。 它是由河南·洛阳 1024 创新实验室 使用SpringBoot2 和 Vue3 Setup语法糖、 Composition Api (同时支持JavaScript和TypeScript双版本) ,开发出的一套简洁、易用的低代码中后台解决方案!SmartAdmin开源了一套漂亮的代码和一套整洁的代码规范,让大家在这浮躁的代码世界里感受到一股把代码写好的清流!同时又让开发者节省大量的时间,减少加班,快乐工作,保持谦逊,保持学习,热爱代码,更热爱生活!

如果对你们有帮助,个人深感荣幸~如果有不当之处~也希望大家相互交流一下。

首先下面一些简单的项目结构说明,如下图示:

关于想业务模块分封装:


每个模块下面的细分说明如下:


项目运行流程:

第1步:首先安装(理论上可以兼容到(3.9X以上))python3.11。安装完成后,把项目导入相关IDE工具,替换相关的虚拟环境依赖包信息。


如果不想重新安装相关依赖包,可以直接使用上面Lib下的相关已安装好的依赖包。

第2步:安装好数据库Postgresql,并导入到数据库中。最终得到如下所示图示结果:


第3步:修改连接数据库配置信息,由于个人为快速,没有把配置信息放到在:

里面进行配置,而是直接的再想数据库模型类里面定义,如下图所示:

你可以人可以自行修改,把上面配置信息统一到想配置目录下。

第4步: 启动相关后端的项目直接运行admin_launch.py,结果如下所示:

以上的步骤大致可以启动起来后端服务接口。接下来则是运行前端的项目。

前端项目的启动,则如下所示:

进入到相关前端项目所在的目录,然后执行先执行相关依赖的安装:

>>typescript-ant-design-vue3> npm run install

然后指向启动前端的项目:

>>typescript-ant-design-vue3> npm run dev

启动后如下图所示:

然后需要注意的地方则是相关API接口的修改,由于我们后端启动的时候使用的是地址是:http://127.0.0.1:32671。所以我们也得做对应的配置修改,如下图所示:

你需要根据自己启动的时候端口来修改。

启动后得到如下所示的登入结果页面:

超级管理员的账号和密码默认为:

账号:admin

密码:admin123456

如有什么问题,您也可以随时的加我微信交流。由于项目部分存在一些线上业务的问题,做了相关的删减,但是不影响主体的功能的使用。

由于添加需要源码的人过多,有些时候,可能有遗漏,忘记发了的!你可以在微信里面再联系一下我~倒是我再发一次!


原文作者:程序员小钟同学;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2021-02-20

  • 博文量
    224
  • 访问量
    111682