django-registration を使用して、ユーザー名、パスワードを含む有効化された電子メールを送信する方法があるかどうか知りたいです。最初に登録フォームを変更することを考えましたが、例が必要です。
4 に答える
django-registrationは、次のコードを内部的に使用して、電子メールの送信を処理します。
send_mail(subject, message, settings.DEFAULT_FROM_EMAIL, [self.user.email])
作業したい場合は、settings.py で値 DEFAULT_FROM_EMAIL を指定する必要があります。
また、次の点に注意してください。
メールは、EMAIL_HOST および EMAIL_PORT 設定で指定された SMTP ホストおよびポートを使用して送信されます。EMAIL_HOST_USER および EMAIL_HOST_PASSWORD 設定が設定されている場合は、SMTP サーバーに対する認証に使用され、EMAIL_USE_TLS 設定は、安全な接続を使用するかどうかを制御します。
例を挙げると、gmail アカウントを使用するために settings.py ファイルで使用したものは次のとおりです。
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 465
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'my@gmail.com'
EMAIL_HOST_PASSWORD = 'my_emails_password'
その後、 django-registrationはメールを送信できるようになります。
これが誰かを助けることを願っています。30分のトラブルシューティングの後、django-registrationを使用している間、これも明示的に述べる必要があることに気付きました -
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
django-register-activateは、django-registration と同様の機能を実装しました。基本的に、ユーザーのサインアップ、電子メールの確認とアクティベーション、ユーザーのログインとユーザーのログアウトのためのコードを提供します。
独自のコードを実装するための例が必要な場合は、register_activate の views.py と forms.py をチェックしてヒントを得ることができます。
答えが役立つことを願っています。他にご不明な点がございましたら、お問い合わせください。