# youlai-django **Repository Path**: git.mrxu.net/youlai-django ## Basic Information - **Project Name**: youlai-django - **Description**: 🌈 基于 Python + Django + Vue 3 + Element-Plus 构建的前后端分离单体权限管理系统。 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://vue.youlai.tech - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2025-07-19 - **Last Updated**: 2025-07-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
 ## 项目简介 [youlai-django](https://gitee.com/youlaiorg/youlai-django) 是基于 Python、Django、Django REST framework、JWT、Redis构建的权限管理系统。是 [vue3-element-admin](https://gitee.com/youlaiorg/vue3-element-admin) 的 Python+Django 后端版本。本项目集成了丰富的功能模块和最佳实践,帮助开发者快速构建企业级的管理系统。 ## 项目特色 - **模块化设计**:采用模块化架构,各功能模块解耦合,易于扩展和维护 - **权限管理**:完善的RBAC权限控制系统,支持灵活的角色权限分配 - **REST API**:基于Django REST framework构建标准RESTful API接口 - **JWT认证**:使用JWT(JSON Web Token)实现安全的用户认证 - **多种登录方式**:支持账号密码、验证码、邮箱验证码等多种登录方式 - **文件存储**:集成MinIO分布式对象存储,高效管理文件资源 - **演示模式**:内置演示模式,保护核心数据安全 - **消息通知**:支持邮件、短信等多种通知方式 ## 技术栈 - **后端框架**:Django 5.1.x - **API框架**:Django REST Framework - **认证方案**:JWT (djangorestframework-simplejwt) - **数据库**:SQLite (开发环境),可扩展支持MySQL - **缓存系统**:Redis - **对象存储**:MinIO - **通知服务**:支持阿里云短信、SMTP邮件服务 ## 🌈 项目源码 | 项目类型 | Gitee | Github | GitCode | |-------------|------------------------------------------------------------------------|--------------------------------------------------------------------------|-----------------------------------------------------------------------| | ✅ Python 后端 | [youlai-django](https://gitee.com/youlaiorg/youlai-django) | [youlai-django](https://github.com/youlaitech/youlai-django) | [youlai-django](https://gitcode.com/youlai/youlai-django) | | Java 后端 | [youlai-boot](https://gitee.com/youlaiorg/youlai-boot) | [youlai-boot](https://github.com/haoxianrui/youlai-boot) | [youlai-boot](https://gitcode.com/youlai/youlai-boot) | | vue3 前端 | [vue3-element-admin](https://gitee.com/youlaiorg/vue3-element-admin) | [vue3-element-admin](https://github.com/youlaitech/vue3-element-admin) | [vue3-element-admin](https://gitcode.com/youlai/vue3-element-admin) | | uni-app 移动端 | [vue-uniapp-template](https://gitee.com/youlaiorg/vue-uniapp-template) | [vue-uniapp-template](https://github.com/youlaitech/vue-uniapp-template) | [vue-uniapp-template](https://gitcode.com/youlai/vue-uniapp-template) | ## 快速开始 ### 环境要求 - Python 3.10+ - Redis - MinIO (可选,用于文件存储) ### 安装步骤 1. **克隆项目** ```bash git clone https://github.com/your-username/youlai-django.git cd youlai-django ``` 2. **创建虚拟环境并激活** ```bash python -m venv venv # Windows venv\Scripts\activate # Linux/Mac source venv/bin/activate ``` 3. **安装依赖** ```bash pip install -r requirements.txt ``` 4. **配置环境变量** 复制`conf/env.py.example`到`conf/env.py`,并根据实际环境修改配置: ```bash cp conf/env.py.example conf/env.py # 修改env.py中的配置项 ``` 5. **数据库迁移** ```bash python manage.py migrate ``` 6. **创建超级用户** ```bash python manage.py createsuperuser ``` 7. **启动服务** ```bash python manage.py runserver ``` 浏览器访问 http://127.0.0.1:8000/admin/ 进入管理界面 ### API文档 启动服务后,可通过以下地址访问API文档: - http://127.0.0.1:8000/api/v1/docs/ ## 部署指南 ### 使用Gunicorn和Nginx部署 1. **安装Gunicorn** ```bash pip install gunicorn ``` 2. **启动Gunicorn** ```bash gunicorn youlai_django.wsgi:application --bind 0.0.0.0:8000 --workers 3 --timeout 120 ``` 3. **Nginx配置示例** ```nginx server { listen 80; server_name yourdomain.com; location /static/ { alias /path/to/your/static/; } location /media/ { alias /path/to/your/media/; } location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://127.0.0.1:8000; } } ``` ### Docker部署 1. **构建Docker镜像** ```bash docker build -t youlai-django . ``` 2. **运行容器** ```bash docker run -d -p 8000:8000 youlai-django ``` ## 贡献指南 1. Fork 本仓库 2. 创建新的特性分支 (`git checkout -b feature/amazing-feature`) 3. 提交你的更改 (`git commit -m 'Add some amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 创建Pull Request ## 许可证 本项目采用 Apache License 2.0 许可证 - 详见 [LICENSE](LICENSE) 文件