Update 0001_initial.py

master
pfy5v82cw 3 months ago
parent 05fcd1bab8
commit 3574abda28

@ -1,31 +1,64 @@
# Generated by Django 4.1.7 on 2023-03-02 07:14
# 说明:该文件为 Django 自动生成的数据迁移文件,用于创建数据库表结构
# 生成条件:执行 makemigrations 命令时Django 检测到 models.py 中新增 OwnTrackLog 模型后自动生成
# 兼容版本Django 4.1.7(迁移文件与 Django 版本强相关,修改需注意兼容性)
# 导入 Django 迁移核心模块和模型字段类
from django.db import migrations, models
# 导入 Django 时区工具(用于处理时间字段的时区一致性)
import django.utils.timezone
class Migration(migrations.Migration):
"""
数据迁移类Django 迁移系统的核心载体用于定义数据库结构变更逻辑
每个迁移类对应一次数据库操作如建表改字段删索引等
"""
# 标记是否为初始迁移(首次创建模型时为 True后续修改为 False
initial = True
# 依赖迁移列表:当前迁移依赖的其他迁移文件(为空表示无依赖)
# 若需依赖其他 app 的迁移,格式为 ['其他app名称.迁移文件名前缀']
dependencies = [
]
# 迁移操作列表:定义具体的数据库变更操作
operations = [
# 创建数据库表操作:对应 models.py 中的 OwnTrackLog 模型
migrations.CreateModel(
# 模型名称(必须与 models.py 中定义的类名一致)
name='OwnTrackLog',
# 字段配置:与模型类中的 field 定义一一对应,决定表的列结构
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('tid', models.CharField(max_length=100, verbose_name='用户')),
# 主键字段BigAutoField 为自增bigint类型Django 默认主键类型
('id', models.BigAutoField(
auto_created=True, # 自动创建,无需手动赋值
primary_key=True, # 标记为主键
serialize=False, # 不序列化(主键默认不参与序列化)
verbose_name='ID' # 后台管理界面显示的字段名称
)),
# 用户标识字段CharField 对应数据库 varchar 类型
('tid', models.CharField(
max_length=100, # 最大长度100必填参数
verbose_name='用户' # 后台显示名称,支持中文
)),
# 纬度字段FloatField 对应数据库 float 类型,存储地理纬度(如 39.9042
('lat', models.FloatField(verbose_name='纬度')),
# 经度字段FloatField 对应数据库 float 类型,存储地理经度(如 116.4074
('lon', models.FloatField(verbose_name='经度')),
('created_time', models.DateTimeField(default=django.utils.timezone.now, verbose_name='创建时间')),
# 创建时间字段DateTimeField 对应数据库 datetime 类型
('created_time', models.DateTimeField(
default=django.utils.timezone.now, # 默认值:当前时区的当前时间
verbose_name='创建时间' # 后台显示名称
)),
],
# 模型元数据配置:对应模型类中的 Meta 内部类,影响表的整体属性
options={
'verbose_name': 'OwnTrackLogs',
'verbose_name_plural': 'OwnTrackLogs',
'ordering': ['created_time'],
'get_latest_by': 'created_time',
'verbose_name': 'OwnTrackLogs', # 单数形式的表名称(后台显示)
'verbose_name_plural': 'OwnTrackLogs', # 复数形式的表名称(后台列表页显示)
'ordering': ['created_time'], # 默认排序:按创建时间升序排列(-created_time 表示降序)
'get_latest_by': 'created_time', # 支持使用 Model.objects.latest() 方法,默认按创建时间取最新记录
},
),
]
]
Loading…
Cancel
Save