19

ローカル PostgreSQL サーバーを使用する Django プロジェクトがあります。デバッガーを使用して、奇妙なバグをデバッグしています。テストの 1 つでデバッガーが停止している間に、テスト データベースを調べようとしました。この新しいデータベース (test_project1) が表示され、すべてのスキームが適切に定義されています。しかし、すべてのテーブルは空です。

テーブルが空ではないことはわかっています。

  • フィクスチャを使用しましたが、いくつかのテストは既に実行され、データが返されました。
  • 事後テストで新しいユーザーが作成され、201 ステータス コードが返されました。

pgAdmin3それでも、またはを使用してデータベースにアクセスしようとすると、データが表示されませんpsql

ここで何が起こっているのか分かりますか?Django が使用するある種の洗練されたキャッシュ メカニズムはありますか?

4

2 に答える 2

18

DjangoTestCaseすべてのテストを独自の transaction にラップしています。したがって、ORM を介してリクエストを行うときはいつでも、データベースは使用されていません。

于 2012-04-29T05:38:40.940 に答える