Transferindo temas automaticamente

Olá,

Existe algum mecanismo (ou consulta) que possa facilmente pegar todos os usuários que atualmente têm o Tema ID X ativado e alterá-los para o Tema ID Y?

Atualmente, tenho o Tema X, que consiste em vários componentes desorganizados, e quero substituí-lo por um Tema Y idêntico, que será vinculado ao GitHub. Mas não quero que ninguém que escolheu o Tema X perceba qualquer diferença (ou seja, não posso simplesmente excluí-lo e pedir a todos que escolham o Y).

Qualquer ajuda será muito apreciada :grin:

Acho que poderia importar o tema do GitHub como um novo componente e fazê-lo ser o único componente do Tema X. (pelo menos acho que isso funcionaria?) Mas isso não parece a solução mais elegante.

Isso deve resolver, mas você deve fazer um backup primeiro.

Entrar no Rails

cd /var/discourse
./launcher enter app

Execute esses comandos

old_id=2
new_id=21
UserOption.where(theme_ids: [old_id]).update_all(theme_ids: [new_id])

Ótimo, valeu!