签入版本
This commit is contained in:
@@ -18,7 +18,7 @@ DjangoAdmin Flask+EleVue is a separated frontend-backend admin framework. Backen
|
||||
# Install dependencies
|
||||
pip install -r requirements.txt
|
||||
|
||||
# Run dev server (default: 127.0.0.1:8021)
|
||||
# Run dev server (default: 127.0.0.1:8023)
|
||||
python app.py
|
||||
|
||||
# Database migrations (Flask-Migrate/Alembic)
|
||||
@@ -36,7 +36,7 @@ cd ui
|
||||
# Install dependencies (uses pnpm)
|
||||
pnpm install
|
||||
|
||||
# Run dev server (default: localhost:8001, proxies /api to backend :8021)
|
||||
# Run dev server (default: localhost:8001, proxies /api to backend :8023)
|
||||
pnpm run dev
|
||||
|
||||
# Build for production
|
||||
@@ -111,7 +111,7 @@ The framework uses an AOP-style transaction interceptor (`src/middleware/transac
|
||||
- Frontend response handler checks `code === 0` for success; `code=401` triggers re-login
|
||||
- **统一约定:所有响应(含认证/权限失败 401/403)返回 HTTP 200 + 业务 code**,不返回对应 HTTP 状态码——前端按 `code` 判断(401 重登、403 无权限)。若需按 HTTP 状态码防护(WAF/代理),应解析业务 code 而非 HTTP status
|
||||
- Permission strings follow pattern: `sys:module:action` (e.g., `sys:user:page`, `sys:role:add`)
|
||||
- Frontend proxies `/api` prefix to backend via Vite dev server proxy (configured in `ui/.env.development` as `VITE_PROXY=[["/api","http://127.0.0.1:8021/"]]`)
|
||||
- Frontend proxies `/api` prefix to backend via Vite dev server proxy (configured in `ui/.env.development` as `VITE_PROXY=[["/api","http://127.0.0.1:8023/"]]`)
|
||||
|
||||
### Naming Conventions
|
||||
|
||||
@@ -137,7 +137,7 @@ The framework uses an AOP-style transaction interceptor (`src/middleware/transac
|
||||
## Environment Configuration
|
||||
|
||||
All config is in `.env` at project root. Key settings:
|
||||
- `FLASK_HOST` / `FLASK_PORT` (default 127.0.0.1:8021)
|
||||
- `FLASK_HOST` / `FLASK_PORT` (default 127.0.0.1:8023)
|
||||
- `FLASK_SECRET_KEY` — must be >= 16 chars or app refuses to start
|
||||
- `DB_*` — 数据库连接,**多库支持**(`config/database.py` 的 `_build_database_url()` 按 `DB_DRIVER` 构建 URL):`mysql`(默认)/`postgresql`/`mssql`/`sqlite`/`oracle`(oracledb 驱动,thin 模式无需 Oracle Client;`DB_DATABASE` 填 SERVICE_NAME)。切换只需改 `DB_DRIVER` + 账号,然后运行 `python scripts/setup_db.py`(`create_all` 建表 + 种子数据,幂等)。注意:`flask db migrate/upgrade`(方案 B)仍针对 MySQL,新建其它库请用 `scripts/setup_db.py`
|
||||
- **跨库数据迁移**:`python scripts/migrate_db.py --src-driver=mysql --src-host=127.0.0.1 --src-port=3306 --src-db=<源库名> --src-user=root --src-pass=<密码> --dst-driver=postgresql --dst-host=127.0.0.1 --dst-port=5432 --dst-db=<目标库名> --dst-user=postgres --dst-pass=<密码> --drop-target-first`。CLI 显式参数、不依赖 `.env`;源/目标均支持 `mysql/postgresql/mssql/sqlite/oracle`(别名 `postgres=postgresql`、`sqlserver=mssql`、`sqlite3=sqlite`),自动建目标库 + `create_all` 建表 + 逐表泵数据 + 按方言重置自增(PG setval / MSSQL CHECKIDENT / Oracle 补 sequence+触发器)+ 逐表行数校验;先加 `--dry-run` 干跑核对计划
|
||||
|
||||
Reference in New Issue
Block a user