sql >> Database >  >> RDS >> PostgreSQL

Django-model voor een Postgres-weergave

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.




  1. Oracle Een ondersteuningsomgeving voor globalisering opzetten

  2. Afbeeldingen toewijzen aan Tree View-knooppunten-2

  3. MySQL DROP-DATABASE

  4. 2 Functies die de seconden retourneren van een Datetime-waarde in Oracle