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 
Пожалуйста, это нужно реализовать! Я просто пытался выделить текст опроса, чтобы скопировать и вставить (кстати, не понимаю, почему это запрещено), и случайно проголосовал в опросе.
Вы можете сделать это, либо проголосовав повторно, либо в некоторых случаях есть кнопка удаления голоса. Не уверен, является ли это плагином или это теперь доступно.
Я не хотел голосовать за другой вариант. Я воздержался от голосования. Я просто хотел выделить текст с помощью мыши, чтобы скопировать и вставить его.
Привет, есть какие-то новости по этому вопросу? Я получил жалобу от одного из пользователей, который не может отменить свой голос в опросе.
Похожая тема здесь: Ability to remove my choice in a poll
Я всё ещё не думаю, что есть способ, @zogstrip, возможно, стоит поручить это, так как мы планировали это сделать уже давно.
Возможно, первое, что нужно сделать здесь, @designers, — решить, хотим ли мы разрешать это безоговорочно или только для определённых опросов?
Я согласен, пора бы уже.
@nbianca, не могли бы вы добавить это в свой список?
Кажется, мы будем работать только с этим экраном:
Добавьте кнопку «Удалить голос» после «Показать результаты».
Это не повлияет на отображение опросов — нужно зайти в настройки, чтобы найти эти опции.
Я активно использую опросы в своём плагине для сбора структурированных данных от пользователей, поэтому это изменение было бы для меня очень полезным.
Могу ли я попросить, чтобы событие голосования продолжало срабатывать и при удалении голосов, чтобы я мог отслеживать изменения?
Я реализовал функционал отмены голосования в:
Привет! Я только что скачал последнюю сборку в свою среду разработки для тестирования и заметил небольшое, возможно, непреднамеренное изменение.
Это незначительное изменение, но для меня оно важно из-за моего необычного способа использования опросов.
Раньше, если в опросе не было голосов, кнопка «Показать результаты» была неактивна. Это имело смысл: нечего показывать, поэтому кнопку «Показать результаты» не следует нажимать. Выглядело это так…
В новой сборке с функцией «Отмена голоса» кажется, что кнопка «Показать результаты» всегда активна, независимо от того, были ли поданы голоса или нет.
Несколько вопросов: так ли это? Это было намеренно или упущение? Вы планируете вернуть всё как было?
Если всё останется как есть, я попробую другой способ достижения желаемого результата.
В любом случае спасибо за функцию отмены голоса, которая, кажется, работает очень хорошо!
Почему это проблема для меня? Я использую опросы для сбора мнений (в основном) от отдельных пользователей. То есть опрос позволяет мне задавать конкретные вопросы отдельному пользователю в определённом контексте. В опросе редко бывает больше одного голоса, но они значительно упрощают сбор структурированных данных.
В моём плагине тема может содержать множество опросов, и эти опросы могут включать много вариантов, что означает необходимость долгого прокручивания. Чтобы пользователям было проще ориентироваться, после того как они проголосуют, компонент темы, который я написал, удаляет из интерфейса опроса все остальные варианты, оставляя только выбранный пользователем.
Чтобы удалить эти варианты, мой компонент темы находит активную кнопку «Показать результаты» и «нажимает» её. После отображения результатов удаляются все варианты, у которых нет голосов.
В итоге это выглядит так.
В данный момент, поскольку кнопка «Показать результаты» по умолчанию активна, мой код нажимает её, и так как голосов не было, все варианты удаляются, и это выглядит так…
Я только что подумал, как можно было бы подойти к этому иначе, теперь, когда результаты всегда отображаются, и понял, что могу добиться желаемого гораздо проще.
Так что, пожалуйста, оставьте всё как есть! LOL ![]()
Я просто выбираю элементы результатов с классом chosen (или без него .chosen) и скрываю их.
div.poll div.poll-container ul.results > li:not(.chosen) {
display: none;
}
Когда я писал свой код пару лет назад, я либо не заметил класс .chosen, либо он был добавлен недавно?
В любом случае, моё решение было значительно избыточным (опросы на JavaScript!), тогда как этот вариант делает именно то, что мне нужно.

Спасибо ещё раз.
Ой, это моя ошибка. Я только что переделал это, и это скоро будет доступно:
Думаю, так было уже давно.
Просто тестирую сейчас, @nbianca, и кнопка теперь работает как раньше. Спасибо!
Ещё один вопрос: я использую метод DiscoursePoll::Poll.vote для автоматического голосования в опросах. Столкнулся с некоторыми проблемами в своём коде. Могу ли я подтвердить, что в ходе рефакторинга кода опросов вы изменили сигнатуру метода?
Мой код предполагал сигнатуру:
def vote(post_id, poll_name, options, user)
а теперь, после ваших изменений, сигнатура выглядит так:
def self.vote(user, post_id, poll_name, options)
то есть параметр user был четвёртым, а теперь стал первым, и все остальные параметры сдвинулись.
Могу ли я подтвердить, что моё предположение верно, и, по вашему мнению, есть ли другие подобные изменения в результате рефакторинга, которые могут вызвать у меня проблемы?
Кстати, удаление голоса в опросе теперь работает отлично!
Вы правы. Я переместил параметр user на первое место в большинстве функций, так как это общепринятое соглашение, которому мы обычно следуем.
Эта тема была автоматически закрыта через 9 дней. Новые ответы больше не принимаются.