大規模なDjangoプロジェクトを新しくリリースされたDjango 1.4にアップグレードしようとしています。python manage.py test
を実行する際にいくつか問題があります。'admin'はDjango 1.4の登録済みネームスペースではありません
Django 1.3で渡された内部テストの多くは失敗しています。本当に奇妙なメッセージは修正できないようです。最も現れる一つがある:。
NoReverseMatch: u'admin' is not a registered namespace
これは、特定のパスワード変更のためのdjango.contrib.auth
テスト(そのうちの一つtest_password_change_fails_with_mismatched_passwords (django.contrib.auth.tests.views.ChangePasswordTest)
で奇妙なことがあり、名前空間が正しく登録とアプリケーション機能だけで結構ですのために発生します。私は「新しい」方法で管理者をインポートしています:
url(r'^admin/', include(admin.site.urls)),
Iグーグル特にこのエラーは、私が見つけることができるすべてがすべてで、この問題に関連し、古いスキームを使用して管理URLをインポートする人々、そして何である
。私はINSTALLED_APPS
から1つずつアプリケーションを削除しようとしましたが、認証テストは合格しません。また、python manage.py shell
からPythonインタプリタをロードしてreverse('admin:index')
を実行すると、URLはエラーなしで/admin/
に解決されます。私は広範囲にわたってコードを読んできましたが、これがどこに落ちるのか分かりません。
前述したように、これは唯一のエラーではありません。私もsettings.py
ファイルでAUTH_PROFILE_MODULE
が定義されていても、test_site_profile_not_available (django.contrib.auth.tests.models.ProfileTestCase)
テストからAttributeError: AUTH_PROFILE_MODULE
を取得しています。どのようにDjango自身のテストはこのように失敗することができますか?
コードに問題があります。 Djangoテストは通常の状況下では失敗しません。あなたはすべてを慎重に検査する必要があります。私も同様のエラーがあり、私のurlパターンの不均衡な括弧に関連することが判明しました。 –
何が起こったのか分かりましたか?私は正直にこのようなものに歩いていて、何が起こったのか分からない。私はちょうど私の自分のアプリのディレクトリに管理テンプレートのものを移動していなくて終わった。 – stormlifter
私はtest_middleware_disabledのようないくつかのdjango 1.5テストで同じエラーがあります。私は受け入れられた答えに示唆されているようにTEMPLATE_LOADERSの順序を逆転しようとしましたが、私のアプリケーションテンプレートのディレクトリ(Amirの提案通り)から管理用テンプレートを削除しましたが、まだエラーが出ます。 –