セカンドメールアドレスの目的は何ですか

この件に関する最初の議論はここにあります: https://meta.discourse.org/t/two-emails-for-one-user/16328。ここでは、議論が続いています: https://meta.discourse.org/t/additional-email-address-per-user-account-support/59847。

これは主に、ユーザーが複数のメールアドレスから投稿する場合に、メール経由で Discourse に投稿するための処理のために実装されたのだと思います。

プライマリメールアドレスへのメールがバウンスした場合に、Discourse がセカンダリメールアドレスにメールを送信しようとするような処理は何もありません。それが一部のケースで役立つ可能性があることは理解できます。

技術的には、Discourse が User.find_by_email を使用してユーザーを検索しようとする際に、セカンダリメールアドレスを使用してユーザーを見つけることができます。

ユーザーはセカンダリメールアドレスを使用して Discourse にログインできます。

Discourse へのログインに外部認証プロバイダーが使用される場合、認証プロバイダーから提供されるメールアドレスに基づいて、セカンダリメールアドレスからユーザーを見つけることができます。

興味深いことに、auth overrides email サイト設定が有効になっており、サイトの外部認証プロバイダーがユーザーのセカンダリメールアドレスを提供する場合、セカンダリメールアドレスがプライマリメールアドレスになり、元のプライマリメールアドレスは破棄されます。このケースは以前はログインエラーを引き起こしていたため、この動作は意図的なようです。どこで発生するかを特定するのに非常に時間がかかりました: discourse/app/models/user.rb at main · discourse/discourse · GitHub

「いいね!」 4