Django 默认自动创建的表,用于支持它的认证系统、会话管理、后台管理等功能。
下面是这些表的功能说明:
🔐 与认证和权限系统有关的表:
| 表名 | 功能说明 |
|---|---|
auth_user | 存储用户账号信息(用户名、密码哈希、邮箱等) |
auth_group | 用户组表(多个用户可属于同一组) |
auth_permission | 权限表(Django 支持细粒度的权限控制) |
auth_user_groups | 用户与组的多对多关系表 |
auth_user_user_permissions | 用户与权限的多对多关系表 |
auth_group_permissions | 用户组与权限的多对多关系表 |
📋 与 Django 后台管理功能相关:
| 表名 | 功能说明 |
|---|---|
django_admin_log | 管理后台的操作日志(如谁做了什么修改) |
django_content_type | 记录项目中所有的模型类型(Model 类型),用于通用关系 |
django_migrations | 记录已经执行过的迁移文件,防止重复执行 |
django_session | 保存用户的 session 数据 |
sqlite_sequence | SQLite 的内部表,用于自增字段的计数(主键 ID) |
✅ 小结
这些都是 Django 初始化数据库后自动创建的系统表,特别是执行了以下命令之后:
python manage.py migrate
它会根据 INSTALLED_APPS 中默认包含的模块(如 django.contrib.auth, django.contrib.sessions, django.contrib.admin 等)自动创建这些表。
如果你添加了自己的模型,并执行了 makemigrations 和 migrate,就会在这些系统表之外看到你自己的业务表。