Creazione e configurazione di campi utente personalizzati

Creazione di un campo utente a selezione multipla di Discourse con molte opzioni

Inserire decine o centinaia di scelte una alla volta nell’editor dei campi utente personalizzati di Discourse è noioso. Ho lavorato su uno strumento CLI multifunzione per Discourse chiamato dsc, che rende più semplici e deterministici operazioni come questa utilizzando file locali. Manipolare i Campi Utente Personalizzati è solo una delle tante cose che può fare.

dsc può creare un nuovo campo utente personalizzato da un file YAML, inclusa l’intera lista di opzioni ordinate in un’unica operazione. Il comando ucf è un alias per user-field.

Prima di tutto, elenca i campi utente personalizzati esistenti:

dsc ucf list myforum --format yaml

Questo mostra i loro ID, tipi, opzioni e impostazioni.

Preparare il campo

Crea user-fields.yaml, sostituendo l’URL di origine, la domanda e le opzioni con i tuoi valori. Assicurati che il tuo YAML sia valido: è facile commettere errori.

Ad esempio, ecco un campo a selezione multipla di paesi con 25 opzioni:

version: 1
source: https://forum.example.org
user_fields:
  - name: Countries
    description: In quali paesi lavori? Seleziona tutte le opzioni applicabili.
    field_type: multiselect
    editable: true
    requirement: on_signup
    show_on_profile: false
    show_on_signup: true
    show_on_user_card: false
    searchable: false
    options:
      - Argentina
      - Australia
      - Brazil
      - Canada
      - China
      - Denmark
      - Egypt
      - France
      - Germany
      - India
      - Ireland
      - Italy
      - Japan
      - Kenya
      - Mexico
      - Netherlands
      - New Zealand
      - Nigeria
      - Norway
      - Singapore
      - South Africa
      - Spain
      - Sweden
      - United Kingdom
      - United States

Questo crea un campo con 25 opzioni, anziché 25 campi separati. Puoi estendere la lista secondo necessità: ho usato questo approccio con successo per un campo con oltre 250 opzioni.

Anteprima, creazione e verifica

dsc ucf push --dry-run myforum user-fields.yaml
# Esamina il piano e il file YAML completo prima di applicarlo.
dsc ucf push myforum user-fields.yaml
dsc ucf show myforum <field-id> --format yaml

Sarò felice di ricevere feedback su dsc, incluse idee per funzionalità mancanti. Crea pure issue sul repo GH.

2 Mi Piace