Would it be possible to get a column added for badge count? I have a lot of badge…um…hounds, yeah that’s the PC word, and they want to see at a glance who is in the lead in terms of collecting the most badges.

It’s not planned or on any roadmaps at the moment.
Thanks for the info - has anyone else asked for something like this, to your knowledge, or am I the lone requestor ![]()
저도 정말 정말 이 기능이 필요할 것 같습니다.
Ruby는 제게 좀 낯선 외국어이고, 단순한 SELECT나 어쩌면 GROUP BY 정도를 넘어가는 SQL은 저를 두렵게 하지만 … 제 이해로는, 사용자 페이지에 표시되는 항목들은 directory_item 테이블의 것들이며, 이 테이블은 directory_item.rb에서 다양한 사용자 테이블의 항목들을 SUM하고 COUNT하여 구성됩니다.
user_stat.rb 파일에서 distinct_badge_count를 발견했는데, 이것이 전 기간에 대한 것이라면 괜찮겠지만, 우리는 다양한 리더보드 기간을 원합니다. 또한 이 목적을 위해 distinct를 사용하지 않는 것이 더 나을 수도 있습니다.
아마도 since 날짜 이후에 granted_at 값이 있는 user_badges에서 카운트하도록 거대한 SQL 쿼리에 추가하는 것만으로도 충분할 것 같습니다.
아, 그리고 활성화된 배지만 확인하고 카운트해야 할 것 같기도 합니다.
사용자 페이지에 배지 수를 추가하는 것이 기술적으로 얼마나 어려운지는 정확히 알 수 없지만, 이제 사용자 페이지에 선택적인 디렉터리 항목을 추가할 수 있게 되었으므로 배지 수를 추가하는 것이 논리적인 확장이라고 생각합니다. 이렇게 하면 사용자 페이지가 리더보드 역할을 더 잘 수행할 수 있을 것입니다.
단순한 제안이지만, directory_items 테이블에 badges_received 열을 추가하는 방식으로 이 문제를 해결할 수 있을까요?
모든 시간대의 합계(all time count)를 찾고자 해서, 님의 안내 덕분에 user_stat.rb에서 이 쿼리를 가져와 데이터 탐색기에서 실행해 보았습니다. 그 결과 배지 수와 함께 모든 사용자의 목록이 나왔습니다:
SELECT users.id user_id, COUNT(distinct user_badges.badge_id) distinct_badge_count
FROM users
LEFT JOIN user_badges ON user_badges.user_id = users.id
AND (user_badges.badge_id IN (SELECT id FROM badges WHERE enabled))
GROUP BY users.id
ORDER BY distinct_badge_count DESC