1

ビルトインサーバーを介して正常に実行される「サイト」という名前のアプリがあり、問題なく操作できます。

標準の tests.py ファイルにテストを追加し、「manage.py テスト サイト」を実行しました。

私の tests.py ファイルには、すべて「test」で始まる 2 つのテストがあります。

詳細モードで manage.py コマンドを実行すると、次のようになります。

test_get_current_site (django-contrib.sites.tests.SitesFrameworkTests) ... ok
test_save_another (django-contrib.sites.tests.SitesFrameworkTests) ... ok
etc.

内部モジュールと名前が競合しているように見えます。
manage.py を取得してコードをテストする方法はありますか?それとも、弾丸をかじってアプリ名を変更する必要がありますか?

4

1 に答える 1

1

アプリの名前を変更します。INSTALLED_APPS 設定に関するドキュメントから:

アプリ名は一意である必要があります

で定義されたアプリケーション名 (つまり、 を含むモジュールへのパスの最後のドット付き部分models.py) は一意でINSTALLED_APPSなければなりません。たとえば、INSTALLED_APPSにdjango.contrib.authとの両方を含めることはできません。myproject.auth

この場合、アプリは Django サイト フレームワークsites衝突します。django.contrib.sites

于 2013-08-19T13:52:55.497 に答える