É possível adicionar colunas adicionais às listas de usuários em grupos? Tenho um plugin ao qual estou tentando adicionar funcionalidade, que adiciona uma coluna à lista de usuários em grupos mostrando se um usuário está Ativo, Suspenso, Silenciado ou Desativado. Parece que o template Handlebars e o controller group-index são o que preciso para isso, mas não há um ponto de saída de plugin, então estou me perguntando qual seria a maneira correta de adicionar uma nova coluna, se isso for possível. Sou novo no desenvolvimento do Discourse, então posso estar perdendo algo aqui, mas agradeceria muito qualquer dica. Li estes guias de desenvolvimento, que são ótimos recursos, mas no momento estou travado.
Olá, bem-vindo à meta ![]()
Você pode usar os outlets group-index-table-header-after-username e group-index-table-row-after-username para inserir um cabeçalho/linha ao lado da coluna de nome de usuário.
Por exemplo:
Para o cabeçalho, você pode usar o componente TableHeaderToggle.
Para a linha, você pode usar, por exemplo, <div class="directory-table__cell directory-table__cell--status">{{this.args.member}}</div> – você pode acessar os dados com {{this.args.member}}
Você precisará corrigir o CSS da grade para incluir uma nova coluna.
.group-members--can-manage {
grid-template-columns: 3fr repeat(5, minmax(min-content, 1fr)) 3em;
^
}
Se você quiser mover a coluna, o posicionamento é um pouco complicado por causa de display: contents; no entanto, usar order pode funcionar.
Em uma nota paralela, você pode ter problemas para obter o status do usuário. Em meus testes, os dados não foram refletidos em member com um usuário suspenso ou silenciado (silencedTillDate ou suspendedTillDate estão indefinidos). Não tenho certeza se há um bug aqui. Não investiguei mais, por enquanto!
Espero que isso ajude.
Ótimo, obrigado! Isso ajuda muito. Percebo agora que não estava vendo as saídas group-index-table-header-after-username e group-index-table-row-after-username porque o site está usando uma versão desatualizada do Discourse (2.7).
De nada!. 2.7! É bem antigo, de fato. ![]()
Como observação, eu encorajaria muito você a usar este componente: (deprecated) Plugin outlet locations theme component. Super útil! ![]()
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
