# Geben Sie mir etwas Kontrolle darüber, wie das Formularvorlagenthema gestaltet ist

**URL:** https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231
**Category:** Feature
**Tags:** form-templates
**Created:** [21. Februar 2024 um 20:10 UTC](https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231 "2024-02-21T20:10:06Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![ganncamp](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ganncamp/32/106199_2.png) [@ganncamp](https://meta.discourse.org/u/ganncamp)
#### Post date: [21. Februar 2024 um 20:10 UTC](https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231/1 "2024-02-21T20:10:07Z")

</div>

Wir sind keine Fans davon, wie der Beitrag, der aus einer Formularvorlage resultiert, gestylt wird.

Hier ist, was ich erwartet hätte:

> **Label:** Antwort  
> **Label:** Antwort  
> **Label:** Antwort

> **Markdown anzeigen**
>
> ```plaintext
> **Label:** Antwort
> **Label:** Antwort
> **Label:** Antwort
> 
> ```

Hier ist, was wir bekommen haben:

> ### label
> 
> answer
> 
> ### label
> 
> answer
> 
> ### label
> 
> answer

> **Markdown anzeigen**
>
> ```plaintext
> > ### label
> > answer
> >
> >
> >
> > ### label
> > answer
> >
> >
> >
> > ### label
> > answer
> 
> ```

Wir hätten gerne etwas Kontrolle darüber. In der Zwischenzeit überlege ich, Formulare mit Leerzeichen für Labels zu erstellen (damit der `*` für erforderliche Felder trotzdem angezeigt wird).

 ![Selection_1605](https://global.discourse-cdn.com/meta/original/4X/2/0/5/205129456cf6baf8697754bcf9b3f6a7fa88f37f.png)

Das ergibt etwas wie das hier:

> ### 
> 
> answer
> 
> ### 
> 
> answer
> 
> ### 
> 
> answer

> **Markdown anzeigen**
>
> ```plaintext
> ###
> answer
> 
> ###
> answer
> 
> ###
> answer
> 
> ```

Es gibt immer noch zu viel Weißraum, aber es ist… _weniger_ unattraktiv.

**Vorschlag:** Wie wäre es, dies zu einem `attribute` der Formulareingabe zu machen? Z.B.

```plaintext
- type: input
  id: rule
  attributes:
    label: "Label"
    placeholder: "sag etwas!"
    answer-styling: bold
  validations:
    required: true

```

---

<div class="post-metadata">

### Author: ![ganncamp](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ganncamp/32/106199_2.png) [@ganncamp](https://meta.discourse.org/u/ganncamp)
#### Post date: [22. Februar 2024 um 15:00 UTC](https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231/2 "2024-02-22T15:00:30Z")

</div>

Nachfassend zu alternativen Präsentationen…

Nachdem ich meinem Team heute Morgen im Standup dieses Formular und die daraus resultierende Post-Ausgabe gezeigt hatte, waren die Reaktionen:

> Uns fehlt die Formatierungs-Symbolleiste oben… Mir wird klar, dass ich kein Formular möchte, das einen Beitrag erstellt; ich möchte einen normalen Beitrag mit einigen Pflichtfeldern.

und

> Ich wünschte, diese Felder könnten in einem kleinen Kasten oben [im resultierenden Beitrag] oder an der Seite oder so etwas sein.

Wir sind also gespannt, wie sich das weiterentwickelt. 😃

---

<div class="post-metadata">

### Author: ![manuel](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/manuel/32/468169_2.png) [@manuel](https://meta.discourse.org/u/manuel)
#### Post date: [22. Februar 2024 um 20:19 UTC](https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231/3 "2024-02-22T20:19:24Z")

</div>

> [@ganncamp](#):
>
> Wir vermissen die Formatierungs-Symbolleiste oben… Mir wird klar, dass ich kein Formular möchte, das einen Beitrag erstellt; ich möchte einen normalen Beitrag mit einigen erforderlichen Feldern.

Für diesen Anwendungsfall könnten Sie einfach die reguläre Themenvorlage einer Kategorie bearbeiten:

 ![image](https://global.discourse-cdn.com/meta/original/4X/c/3/f/c3fe1f91552503fa26e86e76103f9d2fb6086f76.png)

> [@ganncamp](#):
>
> Ich wünschte, diese Felder könnten in einem kleinen Kasten oben [des resultierenden Beitrags] oder an der Seite oder so etwas sein.

Und dies könnte wahrscheinlich mit dem [Discourse Templates Plugin](https://meta.discourse.org/t/discourse-templates/229250) erreicht werden?

 ![image](https://global.discourse-cdn.com/meta/original/4X/f/f/b/ffbbae8f48e53844dbeca687d260deaf76bff756.png)

Auf jeden Fall… so viele Vorlagenoptionen 🤯 😄

---

<div class="post-metadata">

### Author: ![ganncamp](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ganncamp/32/106199_2.png) [@ganncamp](https://meta.discourse.org/u/ganncamp)
#### Post date: [23. Februar 2024 um 12:38 UTC](https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231/4 "2024-02-23T12:38:48Z")

</div>

Hallo,

> [@manuel](#):
>
> Für diesen Anwendungsfall könnten Sie einfach die reguläre Themenvorlage einer Kategorie bearbeiten:

Wir haben in den relevanten Kategorien „normale“ Vorlagen eingerichtet. Das bedeutet nicht, dass die Leute die Daten liefern, nach denen sie fragen. :sadpanda:

> [@manuel](#):
>
> > [@ganncamp](#):
> >
> > Ich wünschte, diese Felder könnten in einem kleinen Kasten oben [des resultierenden Beitrags] oder an der Seite oder so etwas sein
> 
> Und das könnte wahrscheinlich mit dem [Discourse Templates Plugin](https://meta.discourse.org/t/discourse-templates/229250) erreicht werden?

Ähm… Nein. Hier ging es um die Präsentation der aus Formulareingaben gesammelten Daten.

Danke trotzdem. 😃

---

<div class="post-metadata">

### Author: ![Jayne\_ivana](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jayne_ivana/32/226757_2.png) [@Jayne\_ivana](https://meta.discourse.org/u/Jayne_ivana)
#### Post date: [14. März 2024 um 19:01 UTC](https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231/5 "2024-03-14T19:01:05Z")

</div>

+1 für die Funktionsanfrage.

Und in ähnlicher Weise, um Benutzern die Standard-Formatierungsleiste für kurze und/oder lange Textfeldantworten zu geben.

---

<div class="post-metadata">

### Author: ![alexAubin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/alexaubin/32/445866_2.png) [@alexAubin](https://meta.discourse.org/u/alexAubin)
#### Post date: [2. September 2024 um 23:35 UTC](https://meta.discourse.org/t/give-me-some-control-of-how-the-form-template-post-is-styled/296231/6 "2024-09-02T23:35:24Z")

</div>

In der Zwischenzeit habe ich diesen hässlichen Workaround entwickelt, um a) „Checkbox“-Antworten auszublenden, und b) Nicht-Textfeld-Fragen in derselben Zeile anzuzeigen (`<Frage?>: <Antwort>`) und c) den Abstand zwischen den Elementen zu korrigieren

Wenn Sie sich mit Javascript auskennen, können Sie es an Ihre Bedürfnisse anpassen:

(Dies muss im Hooks-Abschnitt von `app.yml` hinzugefügt werden)

```yml
hooks:
  after_code:
    - exec:
        # Typischerweise haben Sie hier die Plugin-Dinge
    - 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");

```
