Este guia explica como conceder um emblema não personalizado através do console do Discourse.
Nível de usuário necessário: Administrador do Sistema
Acesso ao console necessário
Em cenários específicos, você pode precisar conceder manualmente um emblema padrão do Discourse a um usuário pelo console. Por exemplo, um usuário pode não receber o emblema “Enthusiast” por visitar um fórum por 10 dias consecutivos, possivelmente devido à diferença de fuso horário entre o horário local do usuário e o UTC do servidor.
Esta documentação fornece um guia passo a passo sobre como conceder manualmente emblemas não personalizados usando o console do Rails, garantindo que esses emblemas não sejam revogados automaticamente.
Verificando emblemas revogáveis automaticamente
Antes de conceder um emblema, certifique-se de que ele não será revogado automaticamente pelo sistema. Execute o seguinte comando no console do Rails para obter uma lista desses emblemas:
Badge.where(auto_revoke: false).pluck(:name)
Este comando exibirá uma lista de emblemas não revogáveis automaticamente, incluindo:
- “First Flag”
- “Thank You”
- “Gives Back”
- “Empathetic”
- “Out of Love”
- “Higher Love”
- “Crazy in Love”
- “Aficionado”
- “Devotee”
- “Enthusiast”
- “Reader”
- “Anniversary”
- “Appreciated”
- “Respected”
- “Admired”
Concedendo um emblema
Para conceder um emblema desta lista, siga estas etapas:
-
Encontre o usuário pelo nome de usuário:
Execute o seguinte comando, substituindo
enthusiastic_userpelo nome de usuário real:user = User.find_by(username: 'enthusiastic_user') -
Localize o emblema pelo nome:
Por exemplo, para encontrar o emblema “Enthusiast”, use:
badge = Badge.find_by(name: "Enthusiast") -
Conceda o emblema ao usuário:
Finalmente, conceda o emblema ao usuário com este comando:
BadgeGranter.grant(badge, user)