# Enum-Schnittstelle
Die Enum-Schnittstelle ermöglicht den Abruf von übersetzten Werten von oikos. Folgende Enums sind verfügbar:
- Django Model Choices
- Institutionen
- Benutzerdefinierte Auswahlwerte
- Optionen
- Schlagworte
Die Schnittstelle ist unter dem Pfad /api/dls_sync/enum
verfügbar.
# Filter
Die Liste der Enums kann nach enum
oder type
gefiltert werden. Der Filter akzeptiert auch eine Liste von Werten:
/api/dls_sync/enum?enum=institution&enum=option
oder /api/dls_sync/enum?type=institution&type=standard_choices
Hier ist eine Liste der verfügbaren Filter für type
:
institution
-> Institutionenoption
-> Optionencustom_choice
-> Benutzerdefinierte Auswahlwertetag
-> Schlagwortestandard_choices
-> Django Model Choices
Die Liste der verfügbaren Werte für enum
variiert je nach vorhandenen benutzerdefinierten Feldern und Optionen. Grundsätzlich sind folgende Filter für enum
verfügbar:
institution
-> Institutiontag
-> Schlagworte
Die Enums für Optionen setzen sich aus den FieldChoices
der Optionen zusammen. Die Enums für benutzerdefinierte Auswahlwerte setzen sich aus den identifier
der benutzerdefinierten Felder zusammen.
# Ergebnis
Ein Enum-Eintrag enthält folgende Felder:
enum
-> Name des Enumstype
-> Typ des Enumslabel_<sprache>
-> Für jede Sprache im System wird ein Feld nach dem Schemalabel_<sprache>
generiertidentifier
-> Identifiziert den Enum-Eintrag eindeutig innerhalb eines Enumsdata
-> Beliebige Daten eines Enum-Eintrags
Das Feld type
auf dem Enum-Eintrag ist erforderlich, da andernfalls mehrdeutige Werte auftreten können, wenn beispielsweise ein benutzerdefiniertes Feld mit dem identifier
institution
erstellt wird.
Hier ist ein Beispiel für einen Enum-Eintrag:
{
"enum": "task_type",
"type": "standard_choice",
"identifier": "control",
"data": {},
"label_de": "Zustandskontrolle",
"label_fr": "Contrôle de l'état",
"label_en": "Condition control",
"label_it": "Controllo delle condizioni",
"label_rm": "Controlla dal stadi"
}