canyon289
(Ravin Kumar)
1
안녕하세요,
사용자를 일괄 승인하려고 하는데, UI를 통해 한 명만 승인하는 것조차 문제가 발생합니다. 버튼이 회색으로 비활성화되어 있고, 승인 버튼을 누르면 내부 서버 오류가 표시됩니다.
현재 사용 중인 버전은 2.5.0.beta3이며, 커밋 해시는 0e4db91870입니다.
로그를 확인해 보면 다음과 같은 내용이 나옵니다.
Reviewable::InvalidAction (Can't peform `approve_user` on ReviewableUser) /var/www/discourse/app/models/reviewable.rb:346:in `perform'
로그 메시지는 명확하지만, 이 사용자를 승인하기 위해 제가 취해야 할 올바른 사용자 작업이 무엇인지 확실하지 않습니다.
Firefox 콘솔에서 확인되는 내용은 다음과 같습니다.
현재 UI 화면은 다음과 같습니다.
이 문제가 해결되면, 모든 사용자에게 관련 이메일이 발송되도록 일괄 승인하는 방법을 사용하고 싶습니다.
아래와 같이(그리고 이 스레드 https://meta.discourse.org/t/bulk-deleting-mass-modifying-users/64362에서도) 일괄 업데이트를 수행하면 이메일이 발송되도록 보장될까요?
그렇다면 이에 해당하는 명령어는 무엇일까요? (아래와 유사한 형태)
User.joins(:user_stat).where("user_stats.post_count = 0 AND user_stats.topic_count = 0").destroy_all
도움 주시면 감사하겠습니다!
연구를 계속해 보다가 이 스레드를 찾았습니다. 그런데 제 검토 대기열에는 아무것도 없고, 해당 사용자는 이미 활성화된 상태인 것 같습니다.
또 다른 업데이트입니다. 사용자를 비활성화한 후 활성화 버튼을 클릭하면, 이제 사용자를 승인할 수 있습니다. 왜 이런 일이 발생하는 걸까요?
canyon289
(Ravin Kumar)
4
마지막 업데이트 내용입니다. 간단히 말하면, 각 사용자를 비활성화한 후 다시 활성화하고, 승인해야 했습니다. vBulletin 3에서 가져왔기 때문에 제 Discourse 인스턴스가 잘못된 상태로 놓인 건지 확실하지 않습니다.
모든 사용자를 대상으로 API를 호출하는 루프를 돌리는 스크립트를 작성해서 이 작업을 수행하고 있습니다. 현재 실행 중이며, 완료되면 여기에 결과를 공유하겠습니다.