Pesquisado antes de postar:
Gosto de ‘Auto Bumping dos tópicos’ para manter os tópicos sendo renovados. Mas eu gostaria que, quando um visitante visitasse os tópicos, ele não visse dezenas de mensagens de ‘Automaticamente Bumped’.
Existe alguma maneira de excluí-los ocasionalmente, manualmente ou automaticamente (ou ambos)?
Estou perguntando isso porque descobri que, no meu nível, qualquer que seja o meu desejo, o mesmo já foi em grande parte cuidado.
Ela apenas retorna centenas de tópicos que contêm milhares de mensagens ‘Auto-Bumped’, mas não diz quantas mensagens desse tipo existem em quantos tópicos.
Então, acho que, no final, terei que usar o machado nas ‘salas escuras’ do console do rails apenas (o que é um pouco intimidante).
Estou um pouco preocupado porque isso afetará milhares de tópicos/postagens de uma só vez. Se ao menos houvesse um botão selecionar tudo dentro dos tópicos que selecionasse todas as mensagens de bumping juntas e pudéssemos excluir essas mensagens com um clique dentro de qualquer tópico. E se alguém quisesse excluir todas essas mensagens em Todos os Tópicos com apenas um comando ele teria que entrar no ‘rails’.
Não estou reclamando. Estou apenas me expressando.
A 5ª linha do comando rails que você me passou perguntaria ou solicitaría algo antes de excluir todas essas postagens? Ou ela simplesmente faria o que foi instruída, sem nenhum aviso, etc., ou chance de recuperação?
Se possível, podemos excluir as ‘mensagens de bump’ de qualquer tópico primeiro, em vez de excluir de todo o site?
Além disso, você pode sugerir/dizer algum comando rails para visualizar algumas amostras das postagens que vamos excluir?
Algo como isto no explorador de dados pode ajudar a dar uma visão geral:
SELECT p.topic_id,
COUNT(p.id) AS count
FROM posts p
WHERE action_code = 'autobumped'
GROUP BY p.topic_id
ORDER BY count DESC
No entanto, vou dar um aviso sobre o uso do console do Rails para fazer alterações como estas num site ativo se não tiver experiência com ele. Pode querer criar um site de teste e praticar antes de mergulhar.
Sim, resolveu o problema na medida em que foi oferecido pelos designers/desenvolvedores.
Mas eu ainda gostaria de dizer que deveria haver algum comando de ‘Admin’, nas configurações de admin ou no tópico que está sendo visualizado, para selecionar todas as ‘mensagens duplicadas (Auto-Bumped)’ em qualquer tópico ou em todos os tópicos e, em seguida, removê-las, sempre que o admin desejar.
Talvez você pudesse ocultar essas mensagens com CSS em vez disso? Infelizmente, não acho que o widget post-small-action inclua atualmente o tipo de ação como uma classe CSS, então você não pode direcionar especificamente as mensagens de “bump”. Talvez um componente de tema pudesse ajudar?
Sim, verifiquei isso antes de sugerir a solução do explorador de dados.
Adicionar classes específicas a ações pequenas poderia ser uma boa sugestão de Feature.
Não fiz nenhum outro teste, então não sei se haveria outros efeitos colaterais. É possível que as classes small-action-[...] possam entrar em conflito em outro lugar no aplicativo, caso em que você deve escolher um prefixo que tenha garantia de ser exclusivo.
Note que o método addPostSmallActionClassesCallback foi adicionado apenas no mês passado, portanto, você precisa estar em uma versão bastante recente do Discourse:
Por exemplo, você poderia usar o prefixo bathinda-, que seria garantido para não conflitar com nada no Discourse, nem agora nem no futuro. Ficaria algo assim:
Ah, entendi, é por causa das mensagens de intervalo de tempo que não estão ocultas. Isso é complicado porque você não pode selecionar um elemento anterior com CSS.