12

ユーザーのサインアップとメールの確認にdjango-rest-authを使用しています。ユーザーがサインアップすると、メールを正常に送信できます。ただし、電子メールの確認では、次のトレースバックでこのエラーが発生します。

File "/Library/Python/2.7/site-packages/django/core/handlers/base.py" in get_response
  111.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/Library/Python/2.7/site-packages/django/views/generic/base.py" in view
  69.             return self.dispatch(request, *args, **kwargs)
File "/Library/Python/2.7/site-packages/django/views/generic/base.py" in dispatch
  87.         return handler(request, *args, **kwargs)
File "/Library/Python/2.7/site-packages/django/views/generic/base.py" in get
  155.         return self.render_to_response(context)
File "/Library/Python/2.7/site-packages/django/views/generic/base.py" in render_to_response
  130.             template=self.get_template_names(),
File "/Library/Python/2.7/site-packages/django/views/generic/base.py" in get_template_names
  142.                 "TemplateResponseMixin requires either a definition of "

Exception Type: ImproperlyConfigured at /rest-auth/registration/account-confirm-email/vjohhnrf6xpkmn1jxbzaopdn0g79tdyofumeeuyuehcuja8slyz7nzq1idyifcqk/
Exception Value: TemplateResponseMixin requires either a definition of 'template_name' or an implementation of 'get_template_names()'

これを修正する方法について何か考えはありますか?

4

4 に答える 4

9

リカルドの答えは正しいですが、私の問題を解決するのにはあまり役に立ちませんでした。これは、マスターのために必要なことですurls.py

from allauth.account.views import confirm_email
.....
url(r'^accounts-rest/registration/account-confirm-email/(?P<key>.+)/$', confirm_email, name='account_confirm_email'),

URL 仕様の先頭が、allauth REST 呼び出しに使用しているパスで始まることを確認してください。

もちろん、上記は確認を処理する組み込みのビューを使用するためのものです。

于 2018-01-04T07:32:54.313 に答える
6

確認メールを使用する場合、2 つの方法があります。

API で指定された を使用するか、独自のものを作成します。デフォルトでは django-allauth を使用し、逆に TemplateView を使用できます。

自分で作成する場合は、account_confirm_email をオーバーライドしてから、verification_mail に投稿する必要がある場合があります。

urls.py では逆に定義されているため、何をしようとしているかによって、最初に独自の account_confirm_email を作成し、必要なキーを取得して、verify-email に投稿する必要があります。ここに、このバグに関する詳細情報があります。

于 2015-04-19T07:43:54.927 に答える