2

私はいくつかの複雑なユーザーインタラクションを備えたdjangoアプリケーションを開発しているので、多くのテストを行う必要があります。データベース内のUsersテーブル(および関連するすべてのテーブル)をクリアして、最初からやり直す簡単な方法はありますか?また、データベースに「テストユーザー」を自動入力して試してみる良い方法はありますか?

詳細:

  • これは私が数回実行することを期待している操作なので、コマンドラインからすばやく実行できると便利です。
  • django 1.3.1で基本的なユーザーモデル(django.contrib.auth.models.User)を使用しています
  • 私は管理ページを使用しておらず、物事が本当に絶望的にならない限り、それをそのままにしておきたいと思います。

ありがとう!

4

1 に答える 1

6

自動入力については、djangoフィクスチャをご覧ください

フィクスチャをロードすると、変更は上書きされますが、追加は削除されません。テーブルをクリアするには、

User.objects.all().delete() 

これは、ユーザーを参照する外部キーを持つすべてのものにも伝播します。コマンドラインからこれを行うには、これを管理コマンドでラップします

于 2011-11-15T15:23:38.377 に答える