Колонка Django migrate не имеет того же типа данных, что и ссылающаяся колонка

У меня есть следующая модель, которая является существующей моделью БД, и через команду управления inspectdb в Django создается следующая модель.

class ExistingLegacyModel(models.Model):
    period = models.TextField(db_column="Period", blank=True, null=True) 
    key = models.AutoField(db_column="Outloo", primary_key=True)
    class Meta:
        managed = False
        db_table = "table_name"

и в настоящее время я пытаюсь создать модель с полем внешней ключевой ссылки на существующую унаследованную модель БД

class TestModel(models.Model):
    period = models.ForeignKey(
        ExistingLegacyModel,
        on_delete=models.CASCADE,
        db_column="Key",
    )

Итак, когда я запускаю команду makemigrations, файл миграции успешно создается без проблем. Ниже приведено содержимое файла миграции.


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('historical', '0011_phoenixcontractprice'),
    ]

    operations = [
        migrations.CreateModel(
            name='TestModel',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('period', models.ForeignKey(db_column='Key', on_delete=django.db.models.deletion.CASCADE, to='app.ExistingLegacyModel')),
            ],
        ),
    ]

Теперь, когда я запускаю команду migrate, она не работает и выдает следующую ошибку.

django.db.utils.ProgrammingError: ('42000', "[42000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Column 'table_name.OutlookKey' is not the same data type as referencing column 'version_testmodel.OutlookKey' in foreign key 'version_testmodel_OutlookKey_eb16c31c_fk_table_name_OutlookKey'. (1778) (SQLExecDirectW); [42000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Could not create constraint or index. See previous errors. (1750)")

Я столкнулся с этой проблемой за последние пару дней и обыскал весь интернет, но не нашел никакого решения. Один похожий вопрос я нашел на StackOverflow, но и там я не получил никакой помощи. ссылка - Django - Migration foreign key field type not matching current type

В настоящее время я использую Django 3.2.13 и mssql-django для подключения к базе данных MSSQL.

Любая помощь по этому вопросу будет высоко оценена! Заранее спасибо.

Вернуться на верх