Impossibile assegnare il flair dell'avatar impostando il gruppo primario

Vorrei assegnare un distintivo (flair) per l’avatar a tutti gli utenti di un gruppo.

In passato, potevo impostare il distintivo nelle impostazioni del gruppo, spuntare l’opzione “Imposta automaticamente come gruppo principale” e tutti gli utenti del gruppo ricevevano automaticamente il distintivo sul proprio avatar.

Ora, tuttavia, sembra che il distintivo di un utente non sia più associato al suo gruppo principale. Posso verificare che il gruppo principale di un utente sia correttamente impostato, ma il suo avatar non mostra comunque il distintivo.

Mentre esploravo l’interfaccia, ho notato una nuova impostazione nella pagina delle preferenze utente che consente agli utenti di selezionare il proprio distintivo.

Immagino che l’aggiunta di questa impostazione delle preferenze abbia interrotto l’associazione tra il gruppo principale di un utente e il suo distintivo per l’avatar.

Domanda: Esiste ora un modo per assegnare in blocco il distintivo a tutti gli utenti di un gruppo? Non voglio inviare un messaggio al gruppo istruendoli tutti su come impostarlo nelle proprie preferenze, né voglio procedere uno per uno aggiornando le preferenze di ogni utente per loro.

Questo costringe i membri del gruppo ad avere l’avatar del gruppo:

rails c
 target_group = Group.find_by_name("=GroupSlug=")
 users = User.joins(:group_users).where(group_users:{group_id: target_group.id})
 users.each do |u|
  u.flair_group_id = target_group.id
  u.save
 end
Exit

Ho aggiunto una correzione per questo problema nella PR sopra.

L’ho appena riprovato.

Ho notato che le modifiche all’impostazione del gruppo primario non sembravano aggiornare il flair dell’utente al flair del gruppo. La correzione sopra sta ancora funzionando?

Su una nota positiva, ho migliorato il mio piccolo snippet di codice della console Rails sopra in modo che tu abbia solo bisogno dello slug del gruppo (e ho confermato che funziona ancora!).