Wille
1
도메인을 변경한 후, 기존에 관리자 계정에 지정했던 이메일 주소가 더 이상 존재하지 않았습니다. 그래서 이메일 주소를 변경하려고 했으나, 기존 이메일로 인증을 받아야 하기 때문에 변경할 수 없었습니다.
결국 여러 가지 작업을 수행하고, 일부 이메일을 변경했으며, 두 번째 관리자 계정을 생성한 뒤 콘솔을 통해 해당 계정을 삭제했습니다. 하지만 이제 두 번째 관리자 계정에 지정했던 이메일을 다시 사용할 수 없습니다.
이 문제를 지원(Support) 항목에 올릴지, 버그(Bugs) 항목에 올릴지 확신이 서지 않습니다.
솔직히 사용할 수 있는 백업이 하나 있지만, 그 전에 이 문제가 버그인지 확인받고 싶습니다. 전체 초기화나 백업 복원 없이 이 문제를 해결할 방법이 있을까요?
IAmGav
(Gavin Perch)
2
Wille
3
100개 이상의 서로 다른 스키마를 가진 테이블에 대해 100개 이상의 고유한 쿼리를 수동으로 작성해야 한다는 제안을 하시는 것이 아니라면, 어떤 테이블에서 조회하거나 삭제해야 하는지 알아야 합니다.
누군가가 이 게시물을 버그 카테고리로 다시 분류해 주시면 감사하겠습니다.
simon
4
이것은 버그가 아닐 가능성이 높습니다. 콘솔에서 사용자를 어떻게 삭제했는지에 따라 달라집니다.
콘솔에서 다음을 검색해 보세요:
UserEmail.where(email: '<삭제된_사용자의_이메일>')
결과가 반환되면, 반환된 user_id로 사용자를 검색해 보세요:
User.find_by(id: <이메일_레코드_id>)
제 추측으로는, 해당 이메일이 삭제한 사용자에게 belonged 했기 때문에 사용자가 반환되지 않을 것입니다. 만약 그렇다면, 이메일 레코드에 destroy!를 호출하는 것이 안전할 것입니다. 이 작업을 시도하기 전에 사이트의 최신 백업이 있는지 반드시 확인하세요.
만약 이메일이 기존 사용자에게 belonged 한 경우, 이메일 레코드를 삭제하지 마세요.
3개의 좋아요
jomaxro
(Joshua Rosenfeld)
5
콘솔에서 사용자를 삭제하려면 UserDestroyer를 사용하세요. https://meta.discourse.org/t/deleting-users-in-rails-console/141540/2를 참고하세요.
나를 위한 참고: 이것을 #howto:faq로 만들어야 함
5개의 좋아요