Additional email address per user account support

다음과 같이 진행했습니다:

./launcher enter app
rails c
UserEmail.where(user_id: 7, primary: false).destroy_all
UserEmail.create!(user: User.find_by_username("user7"), email: "newemail@example.com")
exit
exit
./launcher restart app

제가 무엇을 잘못한 것인지 모르겠지만, 이번에는 삭제 줄만 실행했습니다. 앱을 재시작하고 웹사이트를 새로고침했더니 부(secondary) 이메일이 사라져 있었습니다! 그래서 웹 UI에서 나머지 작업을 진행하여 더 이상 차단되지 않으므로 주(primary) 이메일을 부 이메일로 변경했습니다.

말씀을 번복하겠습니다. 웹을 통해 이메일을 변경하면 유효한 이메일 주소로 확인 메일이 전송되지만, 사용자 설정 페이지나 사용자 관리 페이지로 돌아오면 무효한 이메일 주소가 그대로 유지됩니다.
이제 어떻게 해야 할지 모르겠습니다 :frowning:

수정:

이 스레드에 스팸을 뿌리는 위험을 감수하더라도, 방법을 찾았습니다.

rails c에 진입한 후
모든 이메일을 삭제했습니다 - 이메일을 Primary(주)로 설정하는 방법을 몰랐기 때문에, 유효한 이메일을 다시 추가할 때마다 부(secondary) 이메일로만 추가되고 있었습니다.

# 모든 부 이메일 삭제
UserEmail.where(user_id: 1234, primary: false).destroy_all
# 주 이메일 삭제
UserEmail.where(user_id: 1234, primary: true).destroy_all

# 주 이메일 설정
UserEmail.create!(user_id: 1234, email: "validemail@example.com", primary: true)

말할 필요도 없지만, 이는 검증을 건너뛰는 것입니다. 하지만 이전에 병합된 계정에서 이미 사람이 직접 검증했으므로, 다른 분들도 이 예시를 활용할 수 있기를 바랍니다. 앱 재시작 후 해야 할 일은 비밀번호 재설정 이메일을 보내는 것뿐입니다.

5개의 좋아요