Python makemigrations работает неправильно

Я использую фреймворк Django

Это мой models.py

from django.db import models

# Create your models here.


class Destination(models.Model):

    name: models.CharField(max_length=100)
    img: models.ImageField(upload_to='pics')
    desc: models.TextField
    price: models.IntegerField
    offer: models.BooleanField(default=False)

и вот моя папка migrations-0001_initial.py:

# Generated by Django 4.1.3 on 2022-11-17 10:17

from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel(
            name='Destination',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
            ],
        ),
    ]

он не мигрирует мою модель, я удалил 0001_initial.py и pycache и мигрировал снова, но все работает так же

Как я могу сделать миграции с моими моделями?

Вы неправильно добавили поля модели. Вы не можете добавлять их таким образом.

измените это:

class Destination(models.Model):
    name: models.CharField(max_length=100)
    img: models.ImageField(upload_to='pics')
    desc: models.TextField
    price: models.IntegerField
    offer: models.BooleanField(default=False)

К этому:

class Destination(models.Model):
    name = models.CharField(max_length=100)
    img = models.ImageField(upload_to='pics')
    desc = models.TextField()
    price = models.IntegerField()
    offer = models.BooleanField(default=False)

После изменения вышеприведенного кода. Попробуйте выполнить миграцию вручную, используя следующую команду:

python manage.py makemigrations appname

python manage.py sqlmigrate appname 0001 #This value will generate after makemigrations. it can be 0001 or 0002 or more

python manage.py migrate
Вернуться на верх