sql >> Database >  >> RDS >> Mysql

Hoe maak je een automatisch incrementeel veld in django dat begint bij 10000

De eenvoudigste is om het post-migreren-signaal op te vangen

from django.apps import AppConfig
from django.db.models.signals import post_migrate

def my_callback(sender, **kwargs):
     if sender.name = 'myapp'
     try:
         university = University.objects.create(pk=999, ...)
         university.delete()
     except IntegrityError:
         pass

class MyAppConfig(AppConfig):
    ...

    def ready(self):
        post_migrate.connect(my_callback, sender=self)

Wat we hier doen, is een record maken en deze onmiddellijk verwijderen. Op mysql verandert dat de volgende waarde in de auto increment. Het maakt niet uit dat het record is verwijderd. Het volgende toegewezen nummer is 1000.



  1. Hoe slaat MySQL Enums op?

  2. mysql rij verplaatsen tussen tabellen

  3. LIKE vs BEVAT op SQL Server

  4. Django + MySQL - Admin Site - Gebruiker toevoegen - OperationalError - SAVEPOINT bestaat niet