우리 커뮤니티에서 사람들은 항상 투표에서 누가 투표했는지 보고 싶어 하지만… 투표자 표시 체크박스를 선택하는 걸 항상 잊어버립니다. 이 옵션을 기본값으로 설정할 수 있는 방법이 있을까요?
그 동작을 변경할 수 있는 설정은 없는 것 같습니다. 하지만 테마 컴포넌트에서 커스텀 JS를 활용하면 가능할 수 있습니다. 체크 상태와 미체크 상태를 제어하는 속성은 다음과 같습니다: https://github.com/discourse/discourse/blob/main/plugins/poll/assets/javascripts/controllers/poll-ui-builder.js#L51
내가 사용하는 사이트에서 투표 기능이 거의 모든 사용자를 혼란스럽게 하는 것 같습니다. (‘누가 투표했는지 보기’ 기능이 없고, ‘단일 선택’을 만들려고 했음에도 ‘다중 선택’을 사용해야 한다는 요구가 있기도 합니다.) 그래서 이 테마 컴포넌트가 매우 유용할 것 같습니다. ![]()
학습용으로 사용해 보고 있지만, 제가 뭔가 잘못 이해하고 있는 것 같습니다.
제가 어디를 잘못하고 있는지 힌트를 받을 수 있을까요?
<script type="text/discourse-plugin" version="0.8">
api.modifyClass("controller:poll-ui-builder", {
onShow() {
this.setProperties({
publicPoll: true,
});
this._super(...arguments);
}
});
</script>
솔직히 제가 처음 만든 투표 몇 개도 이 부분을 두고 잠시 멈춰서 생각해봐야 했습니다. 결국 그냥 실험해봤습니다(관리자 권한을 이용해서요). 도움이 될 수 있는 방법 중 하나는 템플릿으로 가득 찬 주제를 만드는 것입니다. 다만, 이로 인해 많은 사용자가 템플릿을 수정하다가 더 큰 문제에 빠질 수 있다는 부작용이 있습니다.
제 추천은 사이트에 "Discourse에서 투표 만들기"와 같은 제목의 주제를 만드는 것입니다. 이 주제에서는 다양한 유형의 투표를 만드는 방법과 어떤 설정을 사용해야 하는지를 스크린샷/지프로 보여주세요.
원클릭으로 복사할 수 있는 코드 블록 템플릿을 몇 개 만들었지만,
아이콘 안의 버튼만큼 눈에 잘 띄지는 않아요. '투표 가이드’를 할 일 목록에 올려두긴 했는데, 사람들이 실제로 읽을지 확신은 없어요.
그래도 가이드를 만들어 두면 나중에 같은 문제가 생겼을 때 매번 설명을 다시 입력하지 않고 링크만 공유할 수 있어서 좋아요.
이 사이트의 사용자들은 기술에 익숙하지 않은 편이라 ‘복잡해 보이는’ 기능은 피하려는 경향이 있어요. 그래서 눈에 띄는 함정들을 ‘자동으로’ 해결해 줄 수 있다면 도움이 될 것 같아요.
얼마 전 투표 UI가 변경된 이후로 '단일 선택’과 '다중 선택’의 직관성이 조금 떨어졌어요. 사람들은 '단일 선택’을 '옵션이 하나’라고 오해하는 것 같아요. 그래서 '다중 선택’을 고른 뒤 최소/최대 값을 조정해서 단일 선택 투표로 만드는 경우가 많아요. ![]()
‘누가 투표했는지 표시’ 버튼도 고급 옵션 아래에 다소 숨겨져 있는데, 관리자용 몇몇 투표를 제외하면 우리 사이트의 대부분의 투표에서는 이 기능을 사용하게 돼요.
하지만 'public=true’를 기본값으로 전환하는 간단한 조정만으로도 우리에게 큰 도움이 될 것 같아요(방법을 알아낼 수 있다면요
). 단일 선택과 다중 선택에 대한 혼란을 해결할 방법은 아직 생각나지 않지만, 오버라이드 방법을 알아낼 수 있다면 이 부분도 뭔가 해볼 수 있을 것 같아요. ![]()
비슷한 경험을 해본 입장에서, 디스코스에서 지시 사항을 전달해야 할 때면 해당 디스코스 카테고리에서 질문해 달라고 요청하거나, 즉시 가이드를 작성합니다. 가이드를 링크하는 것이 훨씬 낫습니다 — 노력 측면에서만이 아니라요. 사용자가 좀 더 스스로 해결하려는 태도를 갖게 하고, 필요한 정보의 정제된 버전을 보여줄 뿐만 아니라, 가장 좋은 점은? 네, 사용자가 다시 디스코스 사이트로 돌아오게 한다는 겁니다
또한 다른 사람과 공유할 수 있는 링크를 제공함으로써, 대신 이러한 목표를 달성하게 해줍니다 ![]()
저도 이런 경험을 해본 적이 있습니다. 마찬가지로, 투표가 익명인지 아닌지 저나 참여자들에게 100% 명확하지 않았습니다.
단일 선택과 다중 선택의 명명은 수동으로 수정할 수 있습니다. 이 텍스트가 맞을 것 같습니다:
이 부분에 대해, 두 번째 빈 투표 옵션 상자를 추가하면 여러 옵션이지만 한 번만 투표할 수 있음을 암시할 수 있지 않을까요? ‘단일 선택(Single Choice)’ + 단일 상자는 '옵션 하나만’이라는 인상을 줄 수 있습니다. 확신은 없지만, 시도해 볼 가치가 있을 것 같아 이렇게 제안합니다.
이것이 기능 요청 토픽으로 전환된다면, 저는 분명히 그 설정을 첫 페이지에 표시할 것을 제안하겠습니다(기본값이 true인 경우도 포함하여). ![]()
저는 @cocococosti님의 게시글을 잘못 읽어서 '단순 테마 컴포넌트(simple theme component)'라고 생각했고, 그 때문에 끌려들어 왔습니다. 다시 읽어보니 그런 내용은 전혀 없었습니다.
저는 ‘쉬운’ 자바스크립트 문제를 찾고 있었는데, 이 문제는 저에게도 도움이 될 것 같아 완벽해 보였습니다. 계속 조사해 보겠습니다. ![]()
게시물 8개가 새 주제(["public=true"인 투표 기본값 재정의])로 분리되었습니다: ["public=true"인 투표 기본값 재정의]
이제 다음에 구현되었습니다: ![]()
