6

そのため、プロジェクトでdjango-registrationを使用して、構築中のアプリでユーザーの自己登録を有効にしています。登録ユーザーに確認メールを送信するように django-registration を設定しました。

私のsettings.py

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'myUser@myCompany.com'
EMAIL_HOST_PASSWORD = 'apassword'
...
ACCOUNT_ACTIVATION_DAYS = 7

しかし、ユーザーが登録フォームに入力して登録ボタンをクリックすると、ページはメール送信プロセスを待機し続けます。メールを送信してから返信(確認ページ)が届いているようです。

スレッドでメールを送信する方法を示す別のスレッドを読みました。電子メールが送信されるまでフォーム登録送信に対する応答がブロックされないように、django-registration を使用して電子メールを送信する方法はありますか? つまり、それ自体を変更したくありませんdjango-registration

4

1 に答える 1

4

Django Mailerを使用して、電子メールの送信をキューに入れる必要があります。

または、Django で Celery を使用して、メールを SMTP サーバーにキューに入れるか、Amazon SESを使用することもできます。

from registration.signals import user_activated, user_registered

user_registered.connect(<Hook your add email to celery task queue> )
于 2012-08-14T17:40:35.750 に答える