Hilfe Funktion

Tip

Ich halte es für hilfreich, diesen Abschnitt als erstes zu lesen. Wenn er dich aber verwirrt, gehe erst zu den konreten Anwendungen und komme später zu diesem Kapitel zurück. Dann wird deutlicher sein, wofür die Hilfe Funktion nützlich ist.

Die --help Option ist eine nützliche Funktion, die dir dabei hilft, die verschiedenen Befehle und Optionen des edupsyadmin-Tools zu verstehen.

Beispiel 1: Allgemeine Hilfe anzeigen

Um die allgemeine Hilfe für das edupsyadmin-Tool anzuzeigen, führe folgenden Befehl aus:

$ edupsyadmin --help

Dies wird dir eine Übersicht über alle verfügbaren Optionen und Unterbefehle anzeigen. Im Beispiel unten, sind die möglichen Unterbefehle markiert.

 $ edupsyadmin --help
 usage: edupsyadmin [-h] [-v] [-w WARN]
                {create-documentation,delete-client,edit-config,flatten-pdfs,get-clients,info,mk-report,new-client,set-client,setup-demo,taetigkeitsbericht,tui} ...

 options:
   -h, --help            show this help message and exit
   -v, --version         print version and exit
   -w, --warn WARN       logger warning level [WARN]

 subcommands:
   {create-documentation,delete-client,edit-config,flatten-pdfs,get-clients,info,mk-report,new-client,set-client,setup-demo,taetigkeitsbericht,tui}
     create-documentation
                         Fill a pdf form or a text file with a liquid template
     delete-client       Delete a client in the database
     edit-config         Edit app configuration
     flatten-pdfs        Flatten pdf forms
     get-clients         Show clients overview or single client
     info                Get useful information for debugging
     mk-report           Create a report for a given test type.
     new-client          Add a new client
     set-client          Change values for one or more clients
     setup-demo          Create a sandboxed demo environment.
     taetigkeitsbericht  Create a PDF output for the Taetigkeitsbericht (experimental)
     tui                 Start the TUI

Die Hilfe zeigt uns, dass wir den edupsyadmin Befehl mit verschiedenen Unterbefehlen zusammen ausführen (z.B. edupsyadmin info, edupsyadmin new-client, edupsyadmin create-documentation).

Beispiel 2: Hilfe für einen Unterbefehl anzeigen

Um die Hilfe für einen bestimmten Unterbefehl anzuzeigen, verwende den Befehl wie folgt:

$ edupsyadmin create-documentation --help

Dies wird dir die Optionen und Argumente für den create-documentation Unterbefehl anzeigen:

 $ edupsyadmin create-documentation --help
 usage: edupsyadmin create-documentation [-h] [--tui] [--form_set FORM_SET] [--form_paths [FORM_PATHS ...]] [--inject_data [INJECT_DATA ...]] [client_id ...]

 Fill a pdf form or a text file with a liquid template. Use --tui for interactive mode, or provide client_id and form details for direct creation.

 positional arguments:
   client_id

 options:
   -h, --help            show this help message and exit
   --tui                 Open TUI for interactive form filling.
   --form_set FORM_SET   name of a set of file paths defined in the config file
   --form_paths [FORM_PATHS ...]
                         form file paths
   --inject_data [INJECT_DATA ...]
                         key-value pairs in the format 'key=value'; this option can be used to override existing key=value pairs or add new key=value pairs

 Examples:
 # Open the TUI to interactively fill a form
 edupsyadmin create-documentation --tui

 # Fill a PDF form for client with ID 1 using a form set named 'MyFormSet'
 edupsyadmin create-documentation 1 --form_set MyFormSet

 # Fill a text file for client with ID 2 using a specific form path
 edupsyadmin create-documentation 2 --form_paths "./path/to/template.txt"

 # Fill a form for client with ID 3, injecting custom data
 edupsyadmin create-documentation 3 --form_paths "./path/to/form.pdf" \
   --inject_data "key1=value1" "key2=value2"

Die Hilfe zeigt positional arguments und options. Die positional arguments sind Argumente, die du dem Unterbefehl in einer bestimmten Reihenfolge übergeben musst. Die options sind hingegen optionale Parameter, mit denen du das Verhalten des Unterbefehls beeinflussen kannst. Insgesamt siehst du hier, dass der Unterbefehl “create-documentation” ein positional argument (client_id) und mehrere optionale Optionen akzeptiert. Argumente oder Optionen, die bei usage: in eckigen Klammern stehen, sind optional. (Bei create-documentation gibt es noch die Besonderheit, dass entweder ein form_set oder mindestens ein form_path angegeben werden müssen.)