네, 실제로 시스템 배지이며 UI를 통해 편집할 수 없습니다(단, 표시는 됩니다). 해당 줄은 PR을 통해 추가해야 합니다. ![]()
그 PR을 내가 만들어도 될까요? discourse/lib/badge_queries.rb 파일의 156~167행에 있는 SQL만 수정하면 될 것 같습니다.
안녕하세요. 1일 전에 제거되었던 배지가 갑자기 다시 나타났습니다. 이 문제를 수정해 주실 수 있나요?
쿼리가 매일 실행되고 여전히 '자격 요건’을 충족하는 한, 다시 돌아올 것입니다.
버그가 수정될 때까지 매일 수동으로 삭제해야 하는데, 이는 비현실적입니다.
확인해 보았으며, 이 PR은 환영합니다 pr-welcome
(세 가지 모두 처리해야 합니다)
알겠습니다. 감사합니다. 이 부분은 제가 처리할 수 있을 것 같습니다.
그리고 왜 3번을 해야 하는지 모르겠네요. 초대 링크에 대한 부분은 함수를 올바르게 읽었다면, 개수를 반환하는 함수입니다.
코드를 확인하지는 않았으니, 당신 말이 맞을 수도 있겠네요. ![]()
def self.invite_badge(count, trust_level)
<<~SQL
SELECT u.id user_id, current_timestamp granted_at
FROM users u
WHERE u.id IN (
SELECT invited_by_id
FROM invites i
JOIN invited_users iu ON iu.invite_id = i.id
JOIN users u2 ON u2.id = iu.user_id
WHERE i.deleted_at IS NULL AND u2.active AND u2.trust_level >= #{trust_level.to_i} AND u2.silenced_till IS NULL
GROUP BY invited_by_id
HAVING COUNT(*) >= #{count.to_i}
) AND u.active AND u.silenced_till IS NULL AND u.id > 0 AND
(:backfill OR u.id IN (:user_ids) )
SQL
end
여기 있습니다. 1번만 그런 것 같습니다. 전체 파일을 확인해 봤는데 invites와 관련된 다른 내용은 없습니다.
PR을 만들었습니다.
PR를 살펴보니 (PR은 내 전문 분야가 아니라는 점을 참고해 주세요) #{count.to_i}를 1로 변경하면서 Promoter 버전으로만 하드코딩한 것처럼 보입니다.
위에서 드린 예시는 개념 증명(PoC)이었으며, 실제 적용을 위해 조정해야 합니다. ![]()
(또한, 해당 원박스(Onebox)의 텍스트를 보니 제 이름은 'Jammy Dogger’가 아니라 'JammyDodger’입니다…
)
실수했어. 이름 수정했어
기여해 주셔서 감사합니다! PR을 병합했습니다.
또한 아주 작은 참고 사항으로, 보통 수정 사항에는 테스트가 필수이지만, 이전에 테스트가 없었으므로 이번에는 병합 후 나중에 테스트를 추가하도록 하겠습니다.
앞으로도 더 많은 기여를 기대하겠습니다 ![]()
이 주제는 2일 후 자동으로 닫혔습니다. 더 이상 새로운 답변을 남길 수 없습니다.