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

Djangoのテストデータベースをメモリ内でのみ実行するにはどうすればよいですか?

    テストの実行時にデータベースエンジンをsqlite3に設定した場合は、Djangoはインメモリデータベースを使用します

    settings.pyでこのようなコードを使用しています テストの実行時にエンジンをsqliteに設定するには:

    if 'test' in sys.argv:
        DATABASE_ENGINE = 'sqlite3'
    

    またはDjango1.2の場合:

    if 'test' in sys.argv:
        DATABASES['default'] = {'ENGINE': 'sqlite3'}
    

    そして最後にDjango1.3と1.4で:

    if 'test' in sys.argv:
        DATABASES['default'] = {'ENGINE': 'django.db.backends.sqlite3'}
    

    (バックエンドへのフルパスは、Django 1.3では厳密には必要ありませんが、設定を順方向に互換性のあるものにします。)

    南への移行で問題が発生した場合に備えて、次の行を追加することもできます。

        SOUTH_TESTS_MIGRATE = False
    


    1. JSONを返すと正しく機能しません

    2. GUIを使用してMySQLWorkbenchでサーバーステータスを確認する方法

    3. 以前に削除された番号を自動インクリメントで埋める

    4. 存在する場合はoracleドロップインデックス