0

それが何であるか理解できないという意味で、私はかなり奇妙な問題を抱えています。私のサイトはdjango-registrationを使用しており、すべて正常に動作しますが、django devを再起動すると. サーバーがセッションの途中である (つまり、ログインしている) と、すぐにエラーが発生します:

レンダリング中に例外をキャッチしました: 引数 '()' とキーワード引数 '{}' が見つからない 'django.contrib.auth.decorators._CheckLogin object at 0x235aa50' の逆。

繰り返しますが、dev を再起動しなければ、すべて正常に動作します。サーバ。このエラーは、djange dev を再起動した場合にのみ発生します。サーバーが私のサイトにログインしました。

4

1 に答える 1

4

残念ながら、Django の URL 逆引き機能は非常に脆弱です。すべてのビューをインポートし、どのビューが一致するかを確認することで機能します。なんらかの理由でビュー ( URLconf にアタッチされたビュー) をインポートできない場合、逆一致全体が失敗します。

そのため、ビューにいくつかの依存関係があり、サーバーを再起動した直後にビューをインポートできないことがあります。これにより、問題のあるビューとは関係のないものであっても、すべての URL の逆引き一致が失敗します。ただし、ページを更新すると、エラーが解消されることがよくあります。

エラーはおそらく django-registration にはまったくありませんが、あなた自身の見解のどこかで非常にわかりにくいところにあります。他のすべてのURLをコメントアウトしてから、それらを1つずつ再度有効にして、毎回開発サーバーを再起動して、エラーがいつ表示されるかを確認します。

于 2009-05-26T14:33:09.103 に答える