0

私のプロジェクトは、どこかで django.db.models.get_model と呼ばれる userena を使用しています。これは、profiles.Profile に配置されるプロファイル モデルを取得するために使用されます。これは INSTALLED_APPS にあるため、問題なく返されるはずですが、時々 (ほとんどの場合、apache の再起動後は予測できないようです) get_model は、このモデル (profiles.Profile) に対して None を返します。また、userena は SiteProfileNotAvailable エラーを発生させます。

AUTH_PROFILE_MODULE = 'profiles.Profile'

最初は、userena が間違ったパラメーターを get_model に渡すと思っていましたが、これを再確認したところ、実際には app_label='profile' と model_name='Profile' が渡されています。

次に、python manage.py シェルを開き、get_model をインポートして呼び出してみました get_model('profile', 'Profile') 。有効なプロファイル モデルが返されます。私はシェルを終了し、これを行った後、サイトは魔法のように機能します。しかし、Apacheの再起動後、再び同じエラーが発生します。このアクションがキャッシュを更新したのかもしれませんが、わかりません。

私のローカルマシンでは一度も起こらなかったので、どういうわけかApacheに関係していると思います。


更新: 問題は django1.4-alpha バージョンでした。最新版にアップデートしたらバグがなくなりました。

4

0 に答える 0