sql >> データベース >  >> RDS >> PostgreSQL

PostgresビューのDjangoモデル

    Djangoは、マネージドモデルであるかどうかに関係なく、アプリに新しく追加されたテーブルごとに移行を作成します。ただし、managed=Falseを使用する場合、非常に重要で微妙な違いがあります。 設定。結果として生じる移行はダミーエントリです。 SQLはまったく実行されません。

    これを確認するには、管理されていない新しいモデルを追加します

    class Dummy(models.Model):
        something = models.IntegerField()
    
        class Meta:
           managed = False
    

    makemigrationsを実行すると 続いてsqlimigrate *myapp* *migration_number* SQLが生成されないことがわかります。

    一方、Djangoがテーブルを作成しようとしていることに気付いた場合、それは通常、同じモデルが以前に存在していたが、モデルが管理されていたことを意味します。これを確認するには、migrationsを検索してください VirtualTotalのフォルダー これは問題のモデルの名前です。




    1. MySQLCOALESCEおよびNULLIF関数

    2. laravelerrno150外部キー制約が正しく形成されていません

    3. SQLを使用して実行可能コードをテーブルレコードに保存することは可能ですか?

    4. Oracle Not Equals Operator