feat: add apps and custom user
This commit is contained in:
+22
@@ -173,3 +173,25 @@
|
||||
- 阻塞:无。
|
||||
- 决策:T-001 不接入 MySQL、不创建自定义 User、不创建 apps 目录;这些按任务边界留给 T-002。T-001 阶段暂保留 Django 默认 SQLite 配置用于框架启动检查,T-002 必须在首次迁移前改为自定义 User + MySQL 8.4 配置。
|
||||
- 下一步:领取 T-002 建立 apps 目录、自定义 User 与配置。
|
||||
|
||||
## 2026-07-02 T-002 建立 apps 目录、自定义 User 与配置
|
||||
|
||||
- 状态:DONE
|
||||
- 变更:
|
||||
- 创建 `apps/` 包与 `apps/users|portal|billing|ai|api` 五个 Django app。
|
||||
- `apps/users.models.User` 继承 `AbstractUser`,新增 `payment_user_id`、`status`、`created_at`,邮箱改为必填,`db_table="user"`;`settings.AUTH_USER_MODEL="users.User"` 已设置。
|
||||
- `settings.py` 增加根目录 `.env` 读取,数据库从 SQLite 切换到 MySQL,配置 `utf8mb4` 与严格 SQL 模式。
|
||||
- 采用 `PyMySQL` 作为 MySQL 驱动,更新 `requirements.txt` 与 `config/__init__.py`。
|
||||
- 生成 `apps/users/migrations/0001_initial.py`。
|
||||
- 验证:
|
||||
- `py -3.12 -m pip install -r requirements.txt`:通过,安装 PyMySQL 1.1.3。
|
||||
- `py -3.12 manage.py check`:通过,0 issues。
|
||||
- `py -3.12 manage.py makemigrations users`:通过,生成 `0001_initial.py`。
|
||||
- `py -3.12 manage.py migrate`:首次失败,MySQL 返回 `ALTER command denied to user 'test'@'61.141.174.182' for table 'django_content_type'`;用户在宝塔/MySQL 授权后,清理失败迁移留下的空表并重新执行,最终通过。
|
||||
- `SHOW GRANTS FOR CURRENT_USER()`:授权后显示 `GRANT ALL PRIVILEGES ON cmhub.* TO test@%`。
|
||||
- `py -3.12 manage.py check`:通过,0 issues。
|
||||
- `py -3.12 manage.py test`:通过,当前 0 tests。
|
||||
- MySQL 验证:存在自定义 `user` 表,含 `payment_user_id` / `status` / `created_at`;未创建默认 `auth_user` 表;`django_migrations` 共 19 条。
|
||||
- 阻塞:已解除。曾因 MySQL 用户缺少 `ALTER/INDEX/DROP` 等迁移权限受阻。
|
||||
- 决策:使用 PyMySQL 作为 MySQL 驱动;T-002 只落 apps、自定义 User、settings 与 MySQL 初始迁移,不提前实现 UserWallet/ApiKey 等 T-201 内容。
|
||||
- 下一步:领取 T-003 接通 django-admin 与最小测试。
|
||||
|
||||
Reference in New Issue
Block a user