こんにちは。DrupalフォーラムからDiscourseにインポートされたユーザーのパスワードリセットメールの件で、ユーザーをサポートしようとしています。プライマリメールアドレスに問題があり、プロファイルにセカンダリメールアドレスを追加しました。しかし、ユーザーはパスワードリセットをリクエストしようとすると、「登録済みのメールアドレスが存在しません」というメッセージが表示されると言っています。そこで、セカンダリをプライマリに、プライマリをセカンダリに変更しようとしましたが、変更は元に戻ってしまい、適用されません。さらに、Discourseから(管理者およびモデレーターである私に)「この操作を何度も実行しました」と表示され、変更しようとしています(問題の原因を排除するために、Discourseのセーフモードで別のブラウザを使用しました)。Railsコンソールで変更するためのヒントを見つけましたが、emailではなくwmailと書かれている箇所があり、正しくないように見えます。
「いいね!」 2
なので、タイポなしで試してみてください。 ![]()
「いいね!」 2
ありがとう、ジェイ。動作しないようです。
SyntaxError: 予期しないラベル、')' を期待しています
..._id: u.id).first.update (email: "user@email.com")
... ^~~~~~
SyntaxError: 予期しない')'、入力の終わりを期待しています
...email: "user@email.com")
...
UIは常にユーザーのメールアドレスを変更できるようにするべきであり、管理者に対するレート制限を行うべきではないため、これをバグとして再分類します。
Redisキャッシュをクリアすると役立つでしょうか?
さらに2つのタイプミスがありました。
そうは思いません。
おそらく、メールアドレスを大文字でインポートしたか、何か隠れた文字があったのではないでしょうか。セカンダリを追加するのではなく、別のメールに変更してみてください。
うーん、いや、アドレスは正しいです。メールクライアントに貼り付けて、そこにメッセージを送信しました。プライマリを変更しようとしましたが、プライマリはそのまま残り、セカンダリは未検証として追加されるだけでした。
こんにちは。情報が不足していたらすみませんが、何が足りなかったのか正直わかりません。以前にも述べたように、セーフモードで試してみました。
これは期待される動作でしょうか?
管理者はレート制限されるべきではないと思います。
これでうまくいきました
u=User.find_by_username("XXXXXX")
UserEmail.find_by(user_id: u.id).update(email: "XXXX@XXX.com")
「いいね!」 3
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.