优化更新
This commit is contained in:
@@ -19,7 +19,7 @@
|
||||
|
||||
```bash
|
||||
# 进入项目根目录(以实际解压路径为准
|
||||
cd DjangoAdmin_Django_EleVue
|
||||
cd DjangoAdmin_Django_NaiveVue
|
||||
```
|
||||
|
||||
:::tip 温馨提示
|
||||
@@ -142,7 +142,7 @@ vim .env
|
||||
# ============================================================
|
||||
# 基础配置
|
||||
# ============================================================
|
||||
DJANGO_NAME=Django+EleVue旗舰版
|
||||
DJANGO_NAME=Django+NaiveUI旗舰版
|
||||
DJANGO_VERSION=v3.0.0
|
||||
DJANGO_DEBUG=True
|
||||
DJANGO_DEMO=False # 默认值为True(演示模式),开发时请设为False
|
||||
@@ -151,7 +151,7 @@ DJANGO_DEMO=False # 默认值为True(演示模式),开
|
||||
# 数据库配置(根据实际情况修改)
|
||||
# ============================================================
|
||||
DATABASE_ENGINE="django.db.backends.mysql"
|
||||
DATABASE_NAME='djangoadmin.django.elevue'
|
||||
DATABASE_NAME='djangoadmin.django.naivevue'
|
||||
DATABASE_HOST="127.0.0.1"
|
||||
DATABASE_PORT=3306
|
||||
DATABASE_USER="root"
|
||||
@@ -185,7 +185,7 @@ REDIS_DB=0
|
||||
|
||||
```sql
|
||||
-- 创建数据库(UTF-8 编码)
|
||||
CREATE DATABASE `djangoadmin.django.elevue`
|
||||
CREATE DATABASE `djangoadmin.django.naivevue`
|
||||
DEFAULT CHARACTER SET utf8mb4
|
||||
COLLATE utf8mb4_general_ci;
|
||||
```
|
||||
@@ -204,20 +204,13 @@ python manage.py migrate
|
||||
`makemigrations` 会根据 `models.py` 中的模型定义自动生成迁移文件,`migrate` 会执行迁移文件创建或修改数据表结构。更多数据库相关内容请参见 [数据库初始化](/zh/volume1/database) 章节。
|
||||
:::
|
||||
|
||||
### 第三步:回填数据库字段注释(可选)
|
||||
|
||||
```bash
|
||||
# 为数据库表和字段添加中文注释
|
||||
python manage.py add_full_comments
|
||||
```
|
||||
|
||||
### 第四步:导入初始数据
|
||||
### 第三步:导入初始数据
|
||||
|
||||
数据库初始数据(管理员账号、默认角色、菜单权限等)通过 SQL 脚本导入。脚本位于项目对应目录中:
|
||||
|
||||
```bash
|
||||
# 使用 mysql 命令行导入
|
||||
mysql -uroot -p djangoadmin.django.elevue < document/mysql/djangoadmin.django.elevue.sql
|
||||
mysql -uroot -p djangoadmin.django.naivevue < document/mysql/djangoadmin.django.naivevue.sql
|
||||
```
|
||||
|
||||
:::tip 种子数据说明
|
||||
@@ -328,7 +321,7 @@ lsof -i :8000
|
||||
```
|
||||
1. MySQL 服务是否已启动
|
||||
2. .env 中的 DATABASE_HOST、DATABASE_PORT、DATABASE_USER、DATABASE_PASSWORD 是否正确
|
||||
3. 数据库 djangoadmin.django.elevue 是否已创建
|
||||
3. 数据库 djangoadmin.django.naivevue 是否已创建
|
||||
4. 防火墙是否放行了数据库端口
|
||||
```
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
```sql
|
||||
-- 创建数据库(UTF-8 编码)
|
||||
CREATE DATABASE `djangoadmin.django.elevue`
|
||||
CREATE DATABASE `djangoadmin.django.naivevue`
|
||||
DEFAULT CHARACTER SET utf8mb4
|
||||
COLLATE utf8mb4_general_ci;
|
||||
|
||||
@@ -26,7 +26,7 @@ SHOW DATABASES;
|
||||
```
|
||||
|
||||
:::tip 温馨提示
|
||||
数据库名称需要与 `.env` 文件中的 `DATABASE_NAME` 配置一致,默认为 `djangoadmin.django.elevue`。
|
||||
数据库名称需要与 `.env` 文件中的 `DATABASE_NAME` 配置一致,默认为 `djangoadmin.django.naivevue`。
|
||||
:::
|
||||
|
||||
## 第二步:配置数据库连接
|
||||
@@ -38,7 +38,7 @@ SHOW DATABASES;
|
||||
# 数据库配置
|
||||
# ============================================================
|
||||
DATABASE_ENGINE="django.db.backends.mysql" # 数据库引擎
|
||||
DATABASE_NAME='djangoadmin.django.elevue' # 数据库名称
|
||||
DATABASE_NAME='djangoadmin.django.naivevue' # 数据库名称
|
||||
DATABASE_HOST="127.0.0.1" # 数据库地址
|
||||
DATABASE_PORT=3306 # 数据库端口
|
||||
DATABASE_USER="root" # 数据库用户名
|
||||
@@ -54,7 +54,7 @@ DATABASE_PREFIX="django_" # 数据表前缀
|
||||
| MySQL | `django.db.backends.mysql` | 3306 | mysqlclient |
|
||||
| PostgreSQL | `django.db.backends.postgresql` | 5432 | psycopg2-binary |
|
||||
| SQLite | `django.db.backends.sqlite3` | - | 内置 |
|
||||
| Oracle | `django.db.backends.oracle` | 1521 | cx-Oracle |
|
||||
| Oracle | `django.db.backends.oracle` | 1521 | oracledb |
|
||||
| SQL Server | `mssql` | 1433 | mssql-django |
|
||||
|
||||
切换数据库引擎后,需安装对应的 Python 驱动包。例如切换到 PostgreSQL:
|
||||
@@ -105,7 +105,7 @@ python manage.py migrate application.user 0001
|
||||
|
||||
```bash
|
||||
# 使用 mysql 命令行导入
|
||||
mysql -uroot -p djangoadmin.django.elevue < document/mysql/djangoadmin.django.elevue.sql
|
||||
mysql -uroot -p djangoadmin.django.naivevue < document/mysql/djangoadmin.django.naivevue.sql
|
||||
|
||||
# 或使用 Navicat 等工具:右键数据库 → 运行 SQL 文件
|
||||
```
|
||||
@@ -122,20 +122,7 @@ mysql -uroot -p djangoadmin.django.elevue < document/mysql/djangoadmin.django.el
|
||||
| 系统配置 | 系统默认配置项 |
|
||||
:::
|
||||
|
||||
## 第五步:回填数据库字段注释(可选)
|
||||
|
||||
项目提供了自定义管理命令,用于为数据库表和字段添加中文注释:
|
||||
|
||||
```bash
|
||||
# 为所有数据表添加字段注释
|
||||
python manage.py add_full_comments
|
||||
```
|
||||
|
||||
:::tip 温馨提示
|
||||
此命令会读取 Django 模型中的 `verbose_name` 和 `help_text` 属性,将其写入数据库的字段注释中,便于使用 Navicat 等工具查看表结构时理解每个字段的含义。
|
||||
:::
|
||||
|
||||
## 第六步:验证
|
||||
## 第五步:验证
|
||||
|
||||
启动后端服务,验证数据库连接是否正常:
|
||||
|
||||
@@ -236,20 +223,20 @@ python generator.py --config config.json
|
||||
|
||||
```bash
|
||||
# 备份数据库
|
||||
mysqldump -uroot -p djangoadmin.django.elevue > backup.sql
|
||||
mysqldump -uroot -p djangoadmin.django.naivevue > backup.sql
|
||||
|
||||
# 恢复数据库
|
||||
mysql -uroot -p djangoadmin.django.elevue < backup.sql
|
||||
mysql -uroot -p djangoadmin.django.naivevue < backup.sql
|
||||
```
|
||||
|
||||
+ PostgreSQL 备份
|
||||
|
||||
```bash
|
||||
# 备份数据库
|
||||
pg_dump -U postgres djangoadmin.django.elevue > backup.sql
|
||||
pg_dump -U postgres djangoadmin.django.naivevue > backup.sql
|
||||
|
||||
# 恢复数据库
|
||||
psql -U postgres djangoadmin.django.elevue < backup.sql
|
||||
psql -U postgres djangoadmin.django.naivevue < backup.sql
|
||||
```
|
||||
|
||||
+ SQLite 备份
|
||||
@@ -267,11 +254,10 @@ cp db_backup.sqlite3 db.sqlite3
|
||||
数据库初始化的核心步骤:
|
||||
|
||||
```
|
||||
1. 创建数据库:CREATE DATABASE `djangoadmin.django.elevue`
|
||||
1. 创建数据库:CREATE DATABASE `djangoadmin.django.naivevue`
|
||||
2. 配置 .env:设置 DATABASE_ENGINE、DATABASE_NAME 等连接信息
|
||||
3. 执行迁移:python manage.py makemigrations && python manage.py migrate
|
||||
4. 导入初始数据:mysql ... < document/mysql/djangoadmin.django.elevue.sql
|
||||
5. 回填注释(可选):python manage.py add_full_comments
|
||||
4. 导入初始数据:mysql ... < document/mysql/djangoadmin.django.naivevue.sql
|
||||
```
|
||||
|
||||
后续的模型变更通过 Django 迁移系统管理(`makemigrations` + `migrate`),确保数据库结构与代码保持同步。如需使用代码生成器创建新模块,生成器会自动处理数据库迁移。
|
||||
|
||||
@@ -56,7 +56,7 @@ cp .env.example .env
|
||||
# 说明:连接 Docker 容器中运行的 MySQL 数据库
|
||||
# ============================================================
|
||||
DATABASE_ENGINE="django.db.backends.mysql"
|
||||
DATABASE_NAME='djangoadmin.django.elevue'
|
||||
DATABASE_NAME='djangoadmin.django.naivevue'
|
||||
DATABASE_HOST=127.0.0.1 # 数据库主机地址(本地容器)
|
||||
DATABASE_PORT=3306 # 数据库端口(MySQL 默认 3306)
|
||||
DATABASE_USER=root # 数据库用户名
|
||||
@@ -80,7 +80,7 @@ REDIS_DB=0 # Redis 数据库索引
|
||||
```yaml
|
||||
# +======================================================================
|
||||
# | 模块: Docker Compose 配置
|
||||
# | 说明: Django+EleVue 应用服务容器编排
|
||||
# | 说明: Django+NaiveUI 应用服务容器编排
|
||||
# +======================================================================
|
||||
version: '3.7'
|
||||
# ============================================================
|
||||
@@ -90,11 +90,11 @@ services:
|
||||
# ------------------------------------------------------------
|
||||
# 后端服务
|
||||
# ------------------------------------------------------------
|
||||
django_elevue:
|
||||
django_naivevue:
|
||||
# 构建镜像名称
|
||||
image: django_elevue
|
||||
image: django_naivevue
|
||||
# 容器运行时名称
|
||||
container_name: django_elevue
|
||||
container_name: django_naivevue
|
||||
# 镜像构建配置
|
||||
build:
|
||||
context: ./ # 构建上下文路径(项目根目录)
|
||||
@@ -168,7 +168,7 @@ docker compose up -d
|
||||
[+] Building 45.2s (12/12) FINISHED
|
||||
[+] Running 2/2
|
||||
✔ Network djangoadmin_default Created
|
||||
✔ Container django_elevue Started
|
||||
✔ Container django_naivevue Started
|
||||
```
|
||||
|
||||
:::tip 访问服务
|
||||
@@ -202,7 +202,7 @@ docker compose logs -f
|
||||
docker compose logs --tail 100
|
||||
|
||||
# 查看指定服务日志
|
||||
docker compose logs -f django_elevue
|
||||
docker compose logs -f django_naivevue
|
||||
```
|
||||
|
||||
+ 停止与重启
|
||||
@@ -232,10 +232,10 @@ docker compose up --build
|
||||
|
||||
```bash
|
||||
# 进入运行中的容器终端
|
||||
docker compose exec django_elevue bash
|
||||
docker compose exec django_naivevue bash
|
||||
|
||||
# 在容器内执行 Django 命令
|
||||
docker compose exec django_elevue python manage.py shell
|
||||
docker compose exec django_naivevue python manage.py shell
|
||||
```
|
||||
|
||||
## 环境变量注入
|
||||
@@ -244,10 +244,10 @@ Docker 模式下,环境变量通过 `env_file` 从 `.env` 文件注入到容
|
||||
|
||||
```bash
|
||||
# 使用 --env-file 指定环境变量文件
|
||||
docker run --env-file .env django_elevue
|
||||
docker run --env-file .env django_naivevue
|
||||
|
||||
# 通过 -e 参数覆盖单个变量
|
||||
docker run -e DJANGO_DEBUG=False django_elevue
|
||||
docker run -e DJANGO_DEBUG=False django_naivevue
|
||||
```
|
||||
|
||||
:::tip 温馨提示
|
||||
@@ -302,7 +302,7 @@ ports:
|
||||
|
||||
```bash
|
||||
# 查看容器日志排查原因
|
||||
docker compose logs django_elevue
|
||||
docker compose logs django_naivevue
|
||||
```
|
||||
|
||||
常见原因:数据库连接失败、Redis 连接失败、数据库未创建。
|
||||
|
||||
@@ -12,12 +12,12 @@
|
||||
|
||||
| 变量名 | 默认值 | 说明 |
|
||||
|:----|:----|:----|
|
||||
| `DJANGO_NAME` | `Django+EleVue旗舰版` | 应用名称,用于界面显示和系统标识 |
|
||||
| `DJANGO_NAME` | `Django+NaiveUI旗舰版` | 应用名称,用于界面显示和系统标识 |
|
||||
| `DJANGO_VERSION` | `v3.0.0` | 应用版本号 |
|
||||
| `DJANGO_DEBUG` | `True` | 是否开启调试模式。`True` 时输出详细错误堆栈,生产环境务必设为 `False` |
|
||||
| `DJANGO_DEMO` | `True` | 是否开启演示模式。`True` 时所有写操作(add/update/delete/status)返回"演示环境,暂无操作权限"。**开发调试时请设为 `False`** |
|
||||
| `DJANGO_UPLOAD_DIR` | `项目根目录/public/uploads` | 文件上传存储路径 |
|
||||
| `DJANGO_FILE_URL` | `http://file.django.elevue` | 文件访问域名,用于拼接上传文件的访问 URL |
|
||||
| `DJANGO_FILE_URL` | `http://file.django.naivevue` | 文件访问域名,用于拼接上传文件的访问 URL |
|
||||
|
||||
:::tip 安全提示
|
||||
1. 生产环境务必设置 `DJANGO_DEBUG=False`,调试模式会输出详细的错误堆栈信息,可能泄漏内部实现细节。
|
||||
@@ -29,7 +29,7 @@
|
||||
| 变量名 | 默认值 | 说明 |
|
||||
|:----|:----|:----|
|
||||
| `DATABASE_ENGINE` | `django.db.backends.mysql` | 数据库引擎。支持:`mysql`、`postgresql`、`sqlite3`、`oracle`、`mssql` |
|
||||
| `DATABASE_NAME` | `djangoadmin.django.elevue` | 数据库名称。SQLite 时作为数据库文件路径 |
|
||||
| `DATABASE_NAME` | `djangoadmin.django.naivevue` | 数据库名称。SQLite 时作为数据库文件路径 |
|
||||
| `DATABASE_HOST` | `127.0.0.1` | 数据库地址 |
|
||||
| `DATABASE_PORT` | `3306` | 数据库端口 |
|
||||
| `DATABASE_USER` | `root` | 数据库账号 |
|
||||
@@ -142,18 +142,18 @@ Redis 用于存储验证码、JWT 令牌黑名单等功能,是项目正常运
|
||||
# ============================================================
|
||||
# 应用配置
|
||||
# ============================================================
|
||||
DJANGO_NAME=Django+EleVue旗舰版
|
||||
DJANGO_NAME=Django+NaiveUI旗舰版
|
||||
DJANGO_VERSION=v3.0.0
|
||||
DJANGO_DEBUG=True
|
||||
DJANGO_DEMO=False # 代码默认True(演示模式),开发环境设为False以启用写操作
|
||||
DJANGO_UPLOAD_DIR="E:\DjangoAdmin_V3\DjangoAdmin_Django_EleVue\public\uploads"
|
||||
DJANGO_FILE_URL='http://file.django.elevue'
|
||||
DJANGO_UPLOAD_DIR="E:\DjangoAdmin_Django_NaiveVue\public\uploads"
|
||||
DJANGO_FILE_URL='http://file.django.naivevue'
|
||||
|
||||
# ============================================================
|
||||
# 数据库配置
|
||||
# ============================================================
|
||||
DATABASE_ENGINE="django.db.backends.mysql"
|
||||
DATABASE_NAME='djangoadmin.django.elevue'
|
||||
DATABASE_NAME='djangoadmin.django.naivevue'
|
||||
DATABASE_HOST="127.0.0.1"
|
||||
DATABASE_PORT=3306
|
||||
DATABASE_USER="root"
|
||||
@@ -200,7 +200,7 @@ extends/extends_dotenv.py
|
||||
│ 3. 调用 load_dotenv(env_path) 注入环境变量
|
||||
▼
|
||||
config/env.py
|
||||
│ os.getenv('DJANGO_NAME', 'Django+EleVue旗舰版')
|
||||
│ os.getenv('DJANGO_NAME', 'Django+NaiveUI旗舰版')
|
||||
│ os.getenv('DATABASE_HOST', '127.0.0.1')
|
||||
│ ...(所有配置项)
|
||||
▼
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# 环境准备
|
||||
|
||||
本章节介绍在本地搭建项目所需的基础环境和软件安装。项目采用 `Python` + `Django` 后端、`Vue3` + `ElementPlus` 前端的分离架构,本地开发需准备以下软件。
|
||||
本章节介绍在本地搭建项目所需的基础环境和软件安装。项目采用 `Python` + `Django` 后端、`Vue3` + `NaiveUI` 前端的分离架构,本地开发需准备以下软件。
|
||||
|
||||
安装软件:`Python(3.12+)`、`MySQL(8.0+)`、`Redis(6.0+)`、`Node.js(18+)`、`pnpm` 等。
|
||||
安装软件:`Python(3.12+)`、`MySQL(8.0+)`(或其他支持的数据库)、`Redis(6.0+)`、`Node.js(18+)`、`pnpm` 等。
|
||||
|
||||
:::tip 温馨提示
|
||||
1. 部分软件安装后需要设置本地环境变量,便于在终端中使用命令。
|
||||
@@ -127,7 +127,7 @@ mysql>
|
||||
|
||||
```sql
|
||||
-- 创建数据库(UTF-8 编码)
|
||||
CREATE DATABASE `djangoadmin.django.elevue` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE DATABASE `djangoadmin.django.naivevue` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
|
||||
-- 查看数据库
|
||||
SHOW DATABASES;
|
||||
@@ -192,7 +192,7 @@ OK
|
||||
|
||||
## 安装 Node.js
|
||||
|
||||
`Node.js` 是前端项目的运行环境,要求 `18` 或更高版本。前端基于 `Vue3` + `ElementPlus` 构建。
|
||||
`Node.js` 是前端项目的运行环境,要求 `18` 或更高版本。前端基于 `Vue3` + `NaiveUI` 构建。
|
||||
|
||||
+ 下载 Node.js
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ mysql -h127.0.0.1 -P3306 -uroot -p
|
||||
|
||||
# 如果是权限问题,授权用户
|
||||
mysql -uroot -p
|
||||
GRANT ALL PRIVILEGES ON `djangoadmin.django.elevue`.* TO 'root'@'%' IDENTIFIED BY 'your_password';
|
||||
GRANT ALL PRIVILEGES ON `djangoadmin.django.naivevue`.* TO 'root'@'%' IDENTIFIED BY 'your_password';
|
||||
FLUSH PRIVILEGES;
|
||||
```
|
||||
|
||||
@@ -378,8 +378,8 @@ python manage.py shell
|
||||
|
||||
```bash
|
||||
# .env 中的上传配置
|
||||
DJANGO_UPLOAD_DIR="E:\DjangoAdmin_V3\DjangoAdmin_Django_EleVue\public\uploads"
|
||||
DJANGO_FILE_URL='http://file.django.elevue'
|
||||
DJANGO_UPLOAD_DIR="E:\DjangoAdmin_Django_NaiveVue\public\uploads"
|
||||
DJANGO_FILE_URL='http://file.django.naivevue'
|
||||
```
|
||||
|
||||
:::tip 温馨提示
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# 前端启动
|
||||
|
||||
本章节介绍如何将前端项目安装依赖并启动开发服务器。前端基于 `Vue3` + `ElementPlus` + `TypeScript` + `Vite` 构建,采用组件化开发模式,支持热更新和代理配置。
|
||||
本章节介绍如何将前端项目安装依赖并启动开发服务器。前端基于 `Vue3` + `NaiveUI` + `TypeScript` + `Vite` 构建,采用组件化开发模式,支持热更新和代理配置。
|
||||
|
||||
:::tip 温馨提示
|
||||
启动前端前,请确保已完成 [环境准备](/zh/volume1/environment) 章节中的 `Node.js` 和 `pnpm` 安装,并已启动后端服务(参见 [后端启动](/zh/volume1/backend))。
|
||||
|
||||
Reference in New Issue
Block a user