diff --git a/src/DjangoBlog/comments/migrations/0003_alter_comment_options_remove_comment_created_time_and_more.py b/src/DjangoBlog/comments/migrations/0003_alter_comment_options_remove_comment_created_time_and_more.py index a1ca970..843438a 100644 --- a/src/DjangoBlog/comments/migrations/0003_alter_comment_options_remove_comment_created_time_and_more.py +++ b/src/DjangoBlog/comments/migrations/0003_alter_comment_options_remove_comment_created_time_and_more.py @@ -1,4 +1,7 @@ +#zyl: # Generated by Django 4.2.5 on 2023-09-06 13:13 +# 由 Django 4.2.5 在 2023-09-06 13:13 自动生成 +# 这是 comments 应用的第三次迁移文件,主要进行字段和选项的国际化重命名 from django.conf import settings from django.db import migrations, models @@ -7,36 +10,57 @@ import django.utils.timezone class Migration(migrations.Migration): + """ + 对 Comment 模型进行全面的字段名和选项国际化改造 + 主要将中文命名的字段和选项改为英文,以符合 Django 的国际化最佳实践 + """ + # 定义此迁移依赖的迁移文件 dependencies = [ + # 依赖用户认证系统的可替换用户模型 migrations.swappable_dependency(settings.AUTH_USER_MODEL), + # 依赖 blog 应用的 0005 迁移(确保 Article 模型已准备就绪) ('blog', '0005_alter_article_options_alter_category_options_and_more'), + # 依赖 comments 应用的 0002 迁移(在前一次修改基础上进行) ('comments', '0002_alter_comment_is_enable'), ] + # 定义迁移操作列表(按顺序执行) operations = [ + # 1. 修改模型元数据选项(将中文改为英文) migrations.AlterModelOptions( - name='comment', - options={'get_latest_by': 'id', 'ordering': ['-id'], 'verbose_name': 'comment', 'verbose_name_plural': 'comment'}, + name='comment', # 模型名称 + options={ + 'get_latest_by': 'id', # 保持按 ID 获取最新记录 + 'ordering': ['-id'], # 保持按 ID 降序排列 + 'verbose_name': 'comment', # 单数名称改为英文 + 'verbose_name_plural': 'comment', # 复数名称改为英文 + }, ), + + # 2. 删除旧的时间字段(中文 verbose_name) migrations.RemoveField( model_name='comment', - name='created_time', + name='created_time', # 原"创建时间"字段 ), migrations.RemoveField( model_name='comment', - name='last_mod_time', + name='last_mod_time', # 原"修改时间"字段 ), + + # 3. 添加新的时间字段(英文 verbose_name) migrations.AddField( model_name='comment', - name='creation_time', + name='creation_time', # 新字段名:creation_time field=models.DateTimeField(default=django.utils.timezone.now, verbose_name='creation time'), ), migrations.AddField( model_name='comment', - name='last_modify_time', + name='last_modify_time', # 新字段名:last_modify_time field=models.DateTimeField(default=django.utils.timezone.now, verbose_name='last modify time'), ), + + # 4. 修改外键字段的 verbose_name(中文改为英文) migrations.AlterField( model_name='comment', name='article', @@ -47,14 +71,19 @@ class Migration(migrations.Migration): name='author', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='author'), ), + + # 5. 修改布尔字段的 verbose_name(中文改为英文) migrations.AlterField( model_name='comment', name='is_enable', - field=models.BooleanField(default=False, verbose_name='enable'), + field=models.BooleanField(default=False, verbose_name='enable'), # "是否显示" → "enable" ), + + # 6. 修改自关联外键的 verbose_name(中文改为英文) migrations.AlterField( model_name='comment', name='parent_comment', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='comments.comment', verbose_name='parent comment'), ), ] +