È possibile aggiungere colonne aggiuntive agli elenchi utente nei gruppi? Ho un plugin a cui sto cercando di aggiungere funzionalità, che aggiunge una colonna all’elenco utenti nei gruppi che mostra se un utente è Attivo, Sospeso, Silenziato o Disattivato. Sembra che il template Handlebars di group-index e il controller di group-index siano ciò che devo prendere di mira per questo, ma non c’è un plugin outlet, quindi mi chiedo quale sia il modo corretto di aggiungere una nuova colonna, se ciò è possibile. Sono nuovo allo sviluppo di Discourse, quindi potrei perdermi qualcosa qui, ma apprezzerei molto qualsiasi suggerimento. Ho letto queste guide di sviluppo che sono ottime risorse, ma al momento sono bloccato.
Ciao, benvenuto su meta ![]()
Puoi usare gli outlet group-index-table-header-after-username e group-index-table-row-after-username per inserire un’intestazione/riga accanto alla colonna del nome utente.
Ad esempio:
Per l’intestazione, puoi usare il componente TableHeaderToggle.
Per la riga, puoi usare ad esempio <div class="directory-table__cell directory-table__cell--status">{{this.args.member}}</div> – puoi accedere ai dati con {{this.args.member}}
Dovrai correggere il CSS della griglia per includere una nuova colonna.
.group-members--can-manage {
grid-template-columns: 3fr repeat(5, minmax(min-content, 1fr)) 3em;
^
}
Se vuoi spostare la colonna, il posizionamento è un po’ complicato a causa di display: contents; tuttavia, usare order può funzionare.
A margine, potresti avere problemi a ottenere lo stato dell’utente. Nei miei test, i dati non venivano riflessi in member con un utente sospeso o silenziato (silencedTillDate o suspendedTillDate sono indefiniti). Non sono sicuro se ci sia un bug qui. Non ho scavato più a fondo, per ora!
Spero che questo aiuti.
Ottimo, grazie! Questo aiuta molto. Mi rendo conto ora che non stavo vedendo le outlet group-index-table-header-after-username e group-index-table-row-after-username perché il sito sta utilizzando una versione obsoleta di Discourse (2.7).
Prego!. 2.7! È piuttosto vecchio, in effetti. ![]()
Come nota a margine, ti incoraggerei vivamente a utilizzare questo componente: (deprecated) Plugin outlet locations theme component. Super utile! ![]()
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
