É possível adicionar automaticamente um selo para usuários que resolveram mais de 100 problemas aceitos?
O plugin Solved vem com emblemas integrados para 1, 10, 50 e 150 soluções - você só precisa ativá-los - Discourse Solved
Embora para criar um para 100, você possa copiar o SQL de um desses, alterar o limite e adicioná-lo de volta como um novo emblema acionado por SQL personalizado. Há mais informações sobre isso em Creating triggered custom badge queries, e como ativá-lo aqui Enable Badge SQL.
Obrigado pela sua resposta, agora entendi ![]()
Mas quando eu testo esta consulta:
SELECT post_id, user_id, created_at AS granted_at
FROM (
SELECT p.id AS post_id, p.user_id, pcf.created_at,
ROW_NUMBER() OVER (PARTITION BY p.user_id ORDER BY pcf.created_at) AS row_number
FROM post_custom_fields pcf
JOIN badge_posts p ON pcf.post_id = p.id
JOIN topics t ON p.topic_id = t.id
WHERE pcf.name = 'is_accepted_answer'
AND p.user_id <> t.user_id -- ignora tópicos resolvidos pelo OP
AND (:backfill OR p.id IN (:post_ids))
) x
WHERE row_number = 100
O resultado é:
Apenas 2 distintivos para 2 usuários, mas eu sei que outro usuário tem mais de 100 e não aparece na consulta de resultado…
Mas este usuário tem 106 soluções:
Apenas mais uma pergunta, é possível alterar o texto para o meu idioma? Não entendo como fazer isso.
A consulta de emblemas não conta auto-soluções ou soluções de tópicos excluídos, enquanto a do diretório atualmente conta. Isso pode levar a uma pequena incompatibilidade nas contagens.
Você pode atualizar o texto dos emblemas resolvidos pesquisando por badges.solved em seus textos personalizados, e isso deve exibir todos os campos relevantes: ![]()
/admin/customize/site_texts?q=badges.solved
O que você quer dizer com “auto-soluções”?
obrigado pela atualização, o texto está ok ![]()
Esta linha aqui:
Exclui quaisquer soluções em que a solução é dada pela pessoa que criou o tópico.
OK, obrigado ![]()
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

