sql >> Database teknologi >  >> RDS >> Mysql

Sådan laver du automatisk inkrementfelt i django, som starter fra 10000

Det enkleste er at fange efter migreringssignalet

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)

Det, vi gør her, er at oprette en registrering og slette den med det samme. På mysql ændrer det den næste værdi i den automatiske stigning. Det gør ikke noget, at posten er blevet slettet. Det næste tildelte nummer vil være 1000.



  1. Mysql VIEWS vs. PHP-forespørgsel

  2. Tovejs DB-kryptering sikker selv fra Admin

  3. MySQL IKKE I forespørgsel

  4. Beregn punkt 50 miles væk (nord, 45% NØ, 45% SV)