# 为什么选择我们 ## 低代码生成,开发效率倍增 项目最大的特点是代码生成器。只需在数据库中建好表,一条命令即可生成完整的前后端 CRUD 模块: ```bash python generator.py django_example ``` 生成器会自动完成: - **后端代码**:Model、Form、Service、View、URL 全套文件 - **前端页面**:列表页、编辑弹窗、详情弹窗 - **API 接口**:前端 TypeScript API 模块 - **数据库迁移**:自动执行 `makemigrations` 和 `migrate` - **菜单权限**:自动插入菜单记录和权限节点 - **路由注册**:自动将新模块接入主路由 一个标准 CRUD 模块从手写到调试通常需要 1-2 天,使用生成器只需几分钟。 ## 完整的 RBAC 权限体系 系统内置了企业级的基于角色的访问控制: - **用户管理**:用户增删改查、重置密码、角色分配 - **角色管理**:角色增删改查、菜单权限分配 - **菜单管理**:菜单树形结构、权限节点定义 - **部门管理**:组织架构树形管理 - **权限粒度**:精确到每个操作(`sys:user:add`、`sys:user:delete` 等) - **超级管理员**:用户 ID=1 自动拥有所有权限,无需额外配置 前端通过 `v-perm` 指令自动控制按钮的显示和隐藏,与后端权限保持一致。 ## 标准 Django 架构 项目遵循 Django 最佳实践,代码结构清晰。以 `application/example/` 模块为例: ```python # models.py - 数据模型,继承 BaseModel 自动获得公共字段 class Example(BaseModel): name = models.CharField(max_length=100, db_index=True) status = models.IntegerField(choices=STATUS_CHOICES) sort = models.IntegerField() # forms.py - 表单验证,继承 ModelForm class ExampleForm(forms.ModelForm): name = forms.CharField( required=True, max_length=100, error_messages={'required': '案例名称不能为空'} ) # services.py - 业务逻辑,所有 CRUD 操作在这里实现 def get_example_page(request): query = Example.objects.filter(is_delete=False) paginator = Paginator(query, page_size) return R.ok(data=page_data) def add_example(request): data, error = parse_request_body(request) form = forms.ExampleForm(data) if not form.is_valid(): return R.failed(msg=regular.get_err(form)) Example.objects.create( name=cleaned_data.get('name'), create_user=get_username(request) ) return R.ok(msg="创建成功") # views.py - 视图处理,认证 + 权限 + 操作日志 @method_decorator(check_login, name="get") class ExamplePageView(PermissionRequired, View): permission_required = ("sys:example:page",) @operation_log(title="案例管理-查询分页列表", log_type=LogType.QUERY) def get(self, request): return services.get_example_page(request) ``` 所有模块遵循相同的分层模式,新成员上手快,代码可维护性强。 ## 丰富的内置模块 系统预置了 20+ 个常用业务模块,开箱即用: - **系统管理**:用户、角色、菜单、部门、职级、岗位 - **系统配置**:字典管理、系统配置、参数管理 - **内容管理**:文章管理、分类管理、公告管理、友情链接 - **系统监控**:登录日志、操作日志、定时任务 - **开发工具**:代码生成器、文件上传、示例模块 这些模块不仅可以直接使用,也是学习本框架开发模式的最佳参考。 ## Vue3 + Ant Design Vue 前端 前端采用主流技术栈,开发体验优秀: - **Vue3 Composition API**:更灵活的组件逻辑组织 - **TypeScript**:类型安全,减少运行时错误 - **Ant Design Vue**:成熟的企业级 UI 组件库 - **Pinia**:轻量级状态管理,替代 Vuex - **Vite**:极速的开发服务器和构建工具 - **动态路由**:菜单和路由由后端驱动,前端无需硬编码 前端开发常用命令: ```bash cd ui pnpm install # 安装依赖 pnpm dev # 启动开发服务器 (http://localhost:8001) pnpm build # 生产环境构建 pnpm type:check # TypeScript 类型检查 ``` ## 开箱即用的开发体验 从克隆代码到运行项目,只需几步: ```bash # 1. 克隆项目 git clone # 2. 创建虚拟环境并安装依赖 python -m venv venv pip install -r requirements.txt # 3. 配置 .env(数据库、Redis) # 4. 初始化数据库 python manage.py makemigrations && python manage.py migrate # 5. 启动后端 python manage.py runserver # 6. 启动前端 cd ui && pnpm install && pnpm dev ``` 访问 `http://localhost:8001` 即可使用。默认超级管理员账号可直接登录。 ## 持续更新 项目持续迭代,紧跟技术发展: - Django 版本持续升级至 6.0.3 - 前端从 Vue 2 升级到 Vue3 + Ant Design Vue - 代码生成器功能不断增强 - 安全机制持续完善 ## 适用场景 项目适合以下场景: - 企业内部管理系统(ERP、CRM、OA 等) - 内容管理系统(CMS) - 数据管理后台 - 快速原型开发 - 学习 Django + Vue 全栈开发