温馨提示:该项目只部分代码开源,开源部分遵循开源协议 GPL,仅在获得商业授权之后方可应用于商业用途。
PWDF 是一款专为 Django 开发的通用快速开发后台系统,包含完整的员工管理、用户管理、角色管理、组织机构管理、岗位管理、模块管理、操作权限管理、用户权限管理、角色权限管理、序列管理、系统参数管理、系统日志管理、系统异常管理、数据字典管理等功能,可以帮助开发人员方便快速的搭建网站系统的基础后台框架,避免重复开发。
PWDF 提供规范的业务逻辑层接口和详细使用文档,开发人员可以方便调用框架已有的功能。业务逻辑层采用模块化设计,如果需要,开发人员也可以方便的添加自己的功能。以下是一些框架的截图:
下边演示一下如何使用 PWDF 快速搭建 Django 的后台管理系统。主要分为以下几个步骤:
获取 PWDF 源码、数据库脚本文件以及帮助文档
准备 Django 开发环境(这里使用 Pycharm 2018.03 专业版)
安装 Mysql 数据库,创建数据库并导入 Sql
将 PWDF 的源码导入 Pycharm,调整代码配置文件,启动系统测试
开始演示:
1、获取 PWDF 源码、数据库脚本文件以及帮助文档(PWDF 是商业软件,需要付费购买,不过价格很便宜)
dbsql 目录中包含了用来导入数据表结构的 sql 脚本文件,在安装数据库系统并创建数据库之后,需要用这个脚本将框架用到的表结构和测试数据导入到数据库中。当然也可以使用 Django 自己的管理工具根据 migrations 中的文件生成数据库结构,不过生成表结构之后,导入平台的基础数据和测试数据就有些麻烦了。所以建议还是直接用 sql 脚本导入所有的数据。
document 目录中包含了业务逻辑服务层的帮助文档、数据库表结构文档以及一些常用的文档,开发人员可以通过查看业务逻辑文档方便的找到自己想要调用的方法。文档使用 doxygen 生成,如果后期用户对业务逻辑层的功能进行了丰富,也可以直接使用 doxygen 生成完整的帮助文档,以方便后期使用。下边是帮助文档的部分截图:
screenshot 目录中是一些框架的功能截图
src 目录中包含了完整的框架源码和开发环境,开发环境是使用 Pycharm 专业版进行搭建的,用户可以直接将整个目录作为 Django 项目目录导入到 Pycharm中,设置 virtualenv 环境后即可直接运行项目
LIENCES.txt 文件是框架的商业授权文件
目录结构说明 .txt 文件就不用多说了
2、获取代码之后就可以开始部署开发环境了。首先这里安装 Pycharm 2018.3.1 professional。安装过程这里就不在详述了,网上有很多。
3、安装 mysql-8.0.13-winx64 数据库,安装及配置过程如下:
下载 mysql 压缩包,解压到一个目录
安装 mysql 服务
配置 mysql root 用户密码,注意,mysql 8 版本在第一次安装成功后会生成一个随机 root 密码,保存好这个密码,方便后期使用
使用 navicat 软件链接 mysql 数据库管理系统
创建一个空的数据库,例如这里创建 pwdf 数据库
使用 navicat 新建查询,将 sql 脚本导入新数据库中
这样数据库就部署完成了
4、将 PWDF 源码导入 Pycharm 的过程很简单:
启动 Pycharm,在启动界面选择 Open 项目,找到 PWDF 的源码目录并选择
成功导入后需要配置一下 virtualenv 环境,点击 File/Settings/Project/Project Interpreter,在右侧点击小齿轮点击 Add,选择已存在环境,选择源码目录中的 venv 作为目标目录,保存即可
配置好环境之后根据自身情况配置 hpwf 目录下的 setting.py 文件,设置正确的数据库连接参数
点击 Pycharm 的 Run 菜单,点击 Run 选项,选择新建 virtualenv 环境运行 Django 系统
这样整个开发环境的部署工作就完成了,你可以使用浏览器来访问后台了 http://127.0.0.1:8000/Admin/Index/
PWDF 的特点:
框架采用模块设计,当前框架中包括了3个 Django 的 App,一个是 bizlogic 模块、一个是 hadmin 模块、一个是 api 模块(api 模块 SOAP 服务模块开发还未完成)。bizlogic 是整个后台的业务逻辑层,包含了所有功能逻辑代码,每个功能都分在了独立的文件中,一目了然查询修改方便。hadmin 模块中包含了后台的控制器层代码,如果你要修改后台 views,在这里可以找到所有的代码。api 模块是整个框架的对外接口,可接受 json、xml、yaml、HttpRpc 等格式的请求文件,并可以返回响应格式的数据,通过 api 接口,外部系统可以快速方便的进行对接,跨平台、跨语言接入。
全面详细的权限管理功能,包括角色权限的管理、用户权限的管理、岗位权限的管理、组织权限的管理,可以控制不同角色、岗位、个人、组织机构对功能模块以及详细到每一步操作的权限控制。同时支持资源权限的控制功能,例如可以控制某个岗位可以管理某些组织机构中的人员,或者单独某个人可以管理某个组织结构中的某一个人,等等。