Как установить начальное значение первичного ключа в django - PullRequest
1 голос
/ 24 сентября 2019

Я сделал эту модель django:

class Car(models.Model):
    car_id = models.AutoField(primary_key=True)
    engine_size = models.FloatField()
    fuel_consumption = models.FloatField()

    def __str__(self):
        return(str(self.car_id))

Автоматический генератор полей в django всегда начинается с 1. Как мне заставить его генерировать id из начального значения = 100.Например, 100,101,102 ...

Есть ли какой-нибудь встроенный инструмент, или мне просто нужно создать специальную функцию для этого?

1 Ответ

1 голос
/ 24 сентября 2019

Этого можно добиться, создав пустую миграцию.

python manage.py makemigrations YOUR_APP_NAME --empty

Пустая миграция создаст ярлык в приложении и внесет изменения, как показано ниже

from django.db import migrations

class Migration(migrations.Migration):

    dependencies = [

    ]

    operations = [
        migrations.RunSQL('ALTER SEQUENCE APPNAME_CAR_id_seq RESTART WITH 100;')
    ]
...