그동안 나는 a) “checkbox” 답변을 숨기고, b) textarea가 아닌 질문을 같은 줄(<question?>: <answer>)에 표시하며, c) 항목 간 간격을 수정하기 위해 이 지저분한 해킹 방법을 고안했습니다.
자바스크립트에 어느 정도 익숙하시다면, 필요에 맞게 수정하여 사용할 수 있습니다:
(이것은 app.yml의 hooks 섹션에 추가되어야 합니다)
hooks:
after_code:
- exec:
# 보통 여기에는 플러그인 관련 설정이 있습니다
- replace:
filename: /var/www/discourse/app/assets/javascripts/discourse/app/lib/form-template-validation.js
from: 'return formattedOutput.join("\n\n");'
to: |
const formattedOutput2 = mergedData.map((item) => {
const key = Object.keys(item)[0];
const value = item[key];
const type = formTemplate.find(x => x.id == key).type;
if (type == 'checkbox') return;
if ((value) && (type != 'textarea')) return `**${labelMap[key]}**: ${value}`;
if (value) return`\n### ${labelMap[key]}\n${value}\n`;
});
return formattedOutput2.join("\n");