Django maakt een migratie voor elke nieuw toegevoegde tabel in uw app, ongeacht of het een beheerd model is of niet. Er is echter een zeer belangrijk en subtiel verschil wanneer u de managed=False
. gebruikt instelling. De resulterende migratie is een dummy-invoer. Het voert helemaal geen SQL uit.
Om dit te bevestigen, voegt u een nieuw model toe dat niet wordt beheerd
class Dummy(models.Model):
something = models.IntegerField()
class Meta:
managed = False
nu als je makemigrations
doet gevolgd door sqlimigrate *myapp* *migration_number*
je zult zien dat het geen sql produceert.
Als u aan de andere kant merkt dat Django een tabel voor u probeert te maken, betekent dit meestal dat u eerder hetzelfde model had, maar op het moment dat het model werd beheerd. Om dit te bevestigen, zoekt u in uw migrations
map voor VirtualTotal
dat is de naam van het model in kwestie.