Is posible remove a vote from a poll?
I only can change my vote, but I can’t “cancel”
Is posible remove a vote from a poll?
I only can change my vote, but I can’t “cancel”
Not sure if that is possible at the current time.
Nope, there’s currently no way to “unvote” on a poll. Added to my 
Isso precisa ser implementado, por favor! Eu só estava tentando destacar o texto de uma enquete para copiar/colar (não vejo por que isso não é permitido, aliás), e agora votei acidentalmente em uma enquete.
Você pode fazer isso, seja revotando ou, em alguns casos, há um botão para remover o voto. Não tenho certeza se é um plugin ou se já está disponível.
Não desejo votar por uma opção diferente. Eu estava me abstendo da votação. Eu apenas queria clicar e arrastar para selecionar o texto e copiá-lo para colá-lo.
Oi, há alguma novidade sobre isso? Recebi uma reclamação de um dos meus usuários que não consegue cancelar o voto público dele em uma enquete.
Tópico similar aqui: Ability to remove my choice in a poll
Ainda acho que não há uma maneira, @zogstrip. Talvez valha a pena delegar isso, pois temos tido essa intenção há algum tempo.
Talvez a primeira coisa aqui, @designers, seja decidir se queremos permitir isso incondicionalmente ou apenas em pesquisas específicas?
Eu concordo, já era hora.
@nbianca você pode adicionar isso à sua lista?
Ah, imagino que só precisemos mexer nesta tela:
Adicione um botão após “Mostrar resultados” para “Remover Voto”.
Isso não afetará a forma como as enquetes são exibidas; você precisará investigar para encontrar as opções.
Uso bastante as enquetes no meu plugin para capturar entradas estruturadas dos usuários, então essa seria uma ótima mudança para mim.
Posso pedir que o evento de votação continue sendo disparado quando os votos forem removidos, para que eu saiba que houve uma alteração?
Implementei a funcionalidade de desvoto em:
Olá, acabei de baixar a última build para meu ambiente de desenvolvimento para testar isso e notei uma pequena alteração, talvez não intencional.
É uma mudança pequena, mas é significativa para mim devido à forma peculiar como uso enquetes.
Anteriormente, se não houvesse votos na enquete, o botão “Mostrar resultados” estaria desabilitado. Fazia sentido, não há resultados para ver, então o botão “Mostrar resultados” não deveria ser clicável. Ficava assim…
Na nova build “Unvote” parece que o botão “Mostrar Resultados” está sempre habilitado, independentemente de haver votos ou não.
Algumas perguntas: É esse o caso? Isso foi intencional ou uma omissão? Vocês vão mudar isso de volta?
Se for ficar assim, tentarei outra maneira de alcançar o resultado desejado.
De qualquer forma, obrigado pela funcionalidade de “Unvote”, que parece funcionar muito bem!
Por que isso é um problema para mim? Uso enquetes para capturar o feedback de (principalmente) usuários individuais. Ou seja, uma enquete me permite fazer perguntas específicas a um usuário em um contexto específico. Raramente há mais de um voto em uma enquete, mas elas facilitam muito a coleta de dados estruturados.
No meu plugin, um tópico pode conter várias enquetes e essas enquetes podem ter muitas opções, o que significa muita rolagem. Para facilitar a navegação dos usuários, após votarem, um componente de tema que escrevi remove as outras opções da interface da enquete, deixando apenas a opção que eles selecionaram.
Para remover essas opções, meu componente de tema mira em um botão “Mostrar resultados” habilitado e “clica” nele. Uma vez que os resultados são mostrados, qualquer opção que não tenha votos é removida.
No final, fica assim.
No momento, como o botão “Mostrar resultados” está habilitado por padrão, meu código clica nele e, como não houve votos, todas as opções são removidas e fica assim…
Acabei de analisar como poderia abordar isso de forma diferente, agora que os resultados são sempre exibidos, e percebi que posso alcançar o que quero de uma maneira muito mais simples.
Então, por favor, deixe como está! LOL ![]()
Basta selecionar os elementos de resultado escolhidos (ou não .chosen) e defini-los para não serem exibidos.
div.poll div.poll-container ul.results > li:not(.chosen) {
display: none;
}
Quando escrevi meu código há alguns anos, ou não notei a classe .chosen ou ela foi adicionada recentemente?
De qualquer forma, o que eu tinha era significativamente superengenharia (Javascript com polling!), já que isso parece fazer o que preciso.

Obrigado novamente.
Oh, esse foi meu erro. Acabei de reimplementar isso e estará disponível em breve:
Acho que tem sido assim há algum tempo.
Estou apenas testando agora @nbianca e o botão parece funcionar como antes. Obrigado!
Uma outra pergunta: eu uso o método DiscoursePoll::Poll.vote para votar automaticamente em enquetes. Enfrentei alguns problemas no meu código. Posso confirmar que, durante a refatoração do código das enquetes, você alterou a assinatura do método?
Meu código assumia uma assinatura de:
def vote(post_id, poll_name, options, user)
e agora parece que, após suas alterações, a assinatura é:
def self.vote(user, post_id, poll_name, options)
ou seja, o parâmetro user estava na 4ª posição, mas agora está na 1ª, com todos os outros parâmetros deslocados.
Posso validar se a suposição acima está correta e você acha que há outras mudanças de refatoração semelhantes que possam me causar problemas?
Aliás, a remoção de votos nas enquetes parece funcionar bem!
Você está correto. Eu movi o usuário para ser o primeiro parâmetro na maioria das funções porque essa é a convenção que geralmente seguimos.
Este tópico foi fechado automaticamente após 9 dias. Novas respostas não são mais permitidas.