Ho modificato un gruppo esistente e impostato il valore di Livello di fiducia concesso automaticamente ai membri quando vengono aggiunti su 2, quindi tutti i membri di questo gruppo verranno invitati al Livello di fiducia 2 quando verranno aggiunti al gruppo:
Questa soluzione è avanzata. Il comando Rails può essere eseguito solo se si dispone dellâaccesso SSH al server e dovrebbe essere evitato se non si è sicuri di ciò che si sta facendo. In ogni caso, eseguire sempre un backup prima.
Ciao Richie
Puoi usare uno script rails simile a questo:
Dovrebbe funzionare dalla console rails:
target_group = Group.find_by_name("test")
users = User.joins(:group_users).where(group_users:{group_id: target_group.id})
users.each do |u|
u.trust_level = 2
u.save
end
No, è solo un output che non ha alcun effetto sullâesecuzione dello script. Credo che tu possa premere q per uscire.
Puoi anche usare questo:
Potrebbe essere correlato alla parte Group.find_by_name("test"). Non so se accetta il nome effettivo del gruppo o lo slug.
Inoltre, avrei dovuto menzionare che lâuso dei comandi rails è piuttosto avanzato e dovrebbe essere eseguito un backup prima di fare questo tipo di cose. Mi scuso per questo.
I gruppi vengono aggiornati durante unâattivitĂ Sidekiq.
Lâattività è EnsureDbConsistency e può essere attivata tramite Sidekiq, se sai come farlo. Puoi anche aspettare qualche ora; i gruppi verranno aggiornati automaticamente.
Sono stato solo un poâ troppo veloce nel suggerire un comando rails senza un avviso adeguato, poichĂŠ può andare storto se non sappiamo davvero cosa stiamo facendo. Aggiungerò un avviso piĂš visibile al mio post
Questo task di Rails sembra aver declassato tutti i nostri utenti TL4 e TL3 a TL2
Spero che il task EnsureDbConsistency li corregga automaticamente tutti durante la notte