Skip to main content

Syntax für Diskussionskategorieformulare

Du kannst YAML-Syntax verwenden, um die Felder in deinen Diskussionskategorieformularen zu definieren.

Informationen zur YAML-Syntax für Diskussionskategorieformulare

Du kannst benutzerdefinierte Diskussionskategorieformulare erstellen, indem du dem Ordner /.github/DISCUSSION_TEMPLATE/ in deinem Repository eine YAML-Formulardefinitionsdatei hinzufügst. Wenn du noch nicht mit YAML arbeitest und mehr erfahren möchtest, lies den Artikel zum Erlernen von YAML in Y Minuten.

Der Name muss mit dem Slug für eine deiner Diskussionskategorien übereinstimmen. Beispielsweise sollte der Name der Vorlage für die Kategorie „Ankündigungen“ .github/DISCUSSION_TEMPLATE/announcements.yml lauten.

Du kannst für jedes Feld den Eingabetyp, die Validierung und eine Standardbezeichnung definieren.

Wenn ein Communitymitglied ein Diskussionskategorieformular ausfüllt, werden seine Antworten für jede Eingabe in Markdown konvertiert und dem Textkörper einer Diskussion hinzugefügt. Communitymitglieder können ihre Diskussionen bearbeiten, die mit einem Diskussionsformular erstellt wurden, und andere Personen können mit der Diskussion wie mit einer Diskussion interagieren, die mit anderen Methoden erstellt wurde.

In dieser YAML-Beispielkonfigurationsdatei wird ein allgemeines Diskussionskategorieformular definiert.

YAML
title: "[General] "
labels: ["General Introduction"]
body:
  - type: markdown
    attributes:
      value: |
        This is text that will show up in the template!
  - type: textarea
    id: improvements
    attributes:
      label: Top 3 improvements
      description: "What are the top 3 improvements we could make to this project?"
      value: |
        1.
        2.
        3.
        ...
      render: bash
    validations:
      required: true
  - type: markdown
    attributes:
      value: |
        ## Markdown header
        And some more markdown
  - type: input
    id: has-id
    attributes:
      label: Suggestions
      description: A description about suggestions to help you
    validations:
      required: true
  - type: dropdown
    id: download
    attributes:
      label: Which area of this project could be most improved?
      options:
        - Documentation
        - Pull request review time
        - Bug fix time
        - Release cadence
    validations:
      required: true
  - type: checkboxes
    attributes:
      label: Check that box!
      options:
        - label: This one!
          required: true
        - label: I won't stop you if you check this one, too
  - type: markdown
    attributes:
      value: |
        ### The thrilling conclusion
        _to our template_

Syntax auf oberster Ebene

Die Konfigurationsdatei für ein Diskussionskategorieformular muss einen body-Schlüssel enthalten, und body muss mindestens ein Feld ohne Markdown enthalten.

YAML
body:
- type: input
  id: suggestion
  attributes:
    label: Suggestion
    description: "How might we make this project better?"
    placeholder: "Adding a CODE_OF_CONDUCT.md file would be a great idea."
  validations:
    required: true

Sie können für jedes Diskussionskategorieformular die folgenden Schlüssel der obersten Ebene festlegen.

SchlüsselBESCHREIBUNGErforderlichtype
bodyDefinition der Eingabetypen im Diskussionsformular.ErforderlichArray
labelsBezeichnungen, die automatisch den mit dieser Vorlage erstellten Diskussionen hinzugefügt werden.OptionalArray oder durch Trennzeichen getrennte Zeichenfolge
titleEin Standardtitel, der im Diskussionsübermittlungsformular vorab ausgefüllt wird.OptionalString

Um Felder zum Formular hinzuzufügen, füge ein Array von Formularelementen in den body-Schlüssel ein. Eine Liste der verfügbaren Elemente und ihrer Syntax findest du unter Syntax für das GitHub-Formularschema.