Почему создается файл миграции (снова и снова), когда я запускаю makemigrations
Я столкнулся с забавной проблемой... каждый раз, когда я мигрирую, я получаю следующее описание
Your models in app(s): 'organization_app' have changes that are not yet reflected in a migration, and so won't be applied.
Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them.
Итак, я следую тому, что говорит django, и делаю миграции, этот файл миграции создан
# Generated by Django 4.2.3 on 2024-02-07 20:14
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("organization_app", "0002_alter_penaltymodel_tenant_penalty_choice"),
]
operations = [
migrations.AlterField(
model_name="penaltymodel",
name="tenant_penalty_choice",
field=models.CharField(
choices=[("PERCENT", "Percent"), ("AMOUNT", "Amount")],
default="AMOUNT",
max_length=20,
),
),
]
когда я мигрирую, я получаю то же самое описание, которое я указал ранее 'manage.py makemigrations'
и когда я делаю миграцию, тот же самый файл миграции создается снова и снова, хотя я уже мигрировал. это #bug
Вы правы @erny... проблема была в том, что я использовал
class TenantPenaltyChoices(models.Choices):
PERCENT = "PERCENT"
AMOUNT = "AMOUNT"
instead of
class TenantPenaltyChoices(models.TextChoices):
PERCENT = "PERCENT"
AMOUNT = "AMOUNT"