AppParameter

Ein AppParameter-Objekt beinhaltet Informationen über einen Parameter einer App oder App-Gruppe. Es besitzt folgende Attribute:

idString

Der eindeutige Datenbank-Identifizierer der App.

ownerApp, AppGroup oder None

Die App oder App-Gruppe zu der dieser Parameter gehört (oder None wenn dieser Parameter zur Template-Library gehört).

appApp oder None

Wenn dieser Parameter zu einer App gehört, diese App. (oder None wenn dieser Parameter zu einer App-Gruppe oder zur Template-Library gehört).

appgroupAppGroup oder None

Wenn dieser Parameter zu einer App-Gruppe gehört, diese App-Gruppe. (oder None wenn dieser Parameter zu einer App oder zur Template-Library gehört).

parentAppParameter oder None

Der übergeordnete Parameter vom Typ list oder dict (oder None falls dieser Parameter kein Element eines übergeordneten Parameters ist, sondern sich auf obersten Ebene befindet).

typeString

Der Parameter-Typ. Mögliche Werte sind:

Wert

Beschreibung

"bool"

Ein Wahrheitswert: True oder False

"int"

Eine ganze Zahl

"number"

Eine Zahl mit Nachkommastellen

"str"

Text

"html"

HTML-Text

"color"

Eine Farbe

"date"

Ein Datum

"datetime"

Datum + Uhrzeit

"datedelta"

Ein Zeitraum von Tagen

"datetimedelta"

Ein Zeitraum von Tagen, Stunden, Minuten und Sekunden

"monthdelta"

Ein Zeitraum von Monaten

"upload"

Eine hochgeladene Datei

"json"

Ein JSON-Dokument

"code"

Irgendeine Form vom Programm-Code

"app"

Ein Verweis auf eine App

"control"

Ein Verweis auf ein Feld der App zu der dieser Parameter gehört

"list"

Eine Liste (bestehend aus Unterparametern)

"dict"

Eine Menge an Unterparametern mit Namen (Identifizierer)

Bei allen Typen außer "list" und "dict" kann der Wert auch None sein.

Dieses Attribut kann auch gesetzt werden. Wenn der alte Wert nicht zum neu gesetzten Typ passt, wird der Wert auf None gesetzt.

orderInteger oder None

Die Reihenfolge in der dieser Parameter als Kind eines übergeordneten Parameters aufgeführt ist, wenn der übergeordnete Parameter vom Typ list ist (oder None sonst). Dieses Attribut kann auch gesetzt werden.

identifierString oder None

Der Identifizierer des Parameters (oder None wenn dieser Parameter einen übergeordneten Parameter vom Typ list hat). Dieses Attribut kann auch gesetzt werden.

namespaceString oder None

Ein „Namensraum“ in dem sich der Parameter befindet. LivingApps selbst benutzt nur Parameter ohne Namensraum. Der Namenraum ist dazu gedacht, beliebige zusätzliche Parameter anlegen zu können, ohne daß die Gefahr von doppelten Identifizierern entsteht. Die Konbination von identifier und namespace muß jedoch auf oberster Ebene bzw. innerhalb eines übergeordneten Parameters vom Typ dict eindeutig sein.

full_identifierString oder None

Die Kombination aus namespace und identifier mit . getrennt (also namespace.identifier). Wenn dieser App-Parameter keinen Namespace besitzt, so ist das nur identifier.

descriptionString

Die Beschreibung des Parameters. Dieses Attribut kann auch gesetzt werden.

valueObjekt

Der Wert des Objekts. Dabei hängt der Typ des Wertes vom Typ des Parameters ab. Dieser Attribut kann auch gesetzt werden. Je nach dem Typ des gesetzten Wertes ändert sich dadurch auch der Parameter-Typ.

createdatDatum

Zeitpunkt, zu dem der Parameter angelegt wurde.

createdbyUser

Benutzer, der den Parameter angelegt hat.

updatedatDatum oder None

Der Zeitpunkt, zu dem der Parameter das letzte Mal geändert wurde. (Wurde der Parameter noch nicht geändert, so ist updatedat None.)

updatedbyUser oder None

Der Benutzer, der den Parameter zuletzt geändert hat. (Wurde der Parameter noch nicht geändert, so ist updatedby None.)

append_param(type, description, value)Methode(String, String oder None, Objekt) ➝ AppParameter

Erzeugt einen neuen Parameter vom Typ type mit der Beschreibung description und dem Wert value und fügt ihn an diesen Parameter vom Typ list an. Der neu angelegte Parameter wird zurückgegeben. Diese Methode ist nur bei Parametern vom Typ list vorhanden.

add_param(type, identifier, description, value)Methode(String, String, String oder None, Objekt) ➝ AppParameter

Erzeugt einen neuen Parameter vom Typ type, mit dem Identifizierer identifier, der Beschreibung description und dem Wert value und fügt ihn an diesen Parameter vom Typ dict an. Der neu angelegte Parameter wird zurückgegeben. Diese Methode ist nur bei Parametern vom Typ dict vorhanden.

save(sync)Methode(Bool) ➝ None

Speichert einen neuen oder geänderten Parameter in der Datenbank ab.

Wenn für sync True übergeben, so wird nach dem Speichern das AppParameter-Objekt mit dem Datenbank-Inhalt aktualisiert.

delete()Methode() ➝ None

Löscht den Parameter aus der Datenbank.

stateString

Der Zustand des Parameters. Mögliche Werte sind:

Wert

Beschreibung

"new"

Das Parameter-Objekt wurde neu angelegt, ist aber noch nicht gespeichert.

"saved"

Das Parameter-Objekt wurde aus der Datenbank geladen und noch nicht verändert.

"changed"

Das Parameter-Objekt wurde verändert.

"deleted"

Der Parameter wurde bereits in der Datenbank gelöscht.

is_dirty()Methode() ➝ Bool

Git True zurück, wenn das Parameter-Objekt neu ist oder geändert wurde (d.h. wenn state "new" oder "changed" ist).

is_deleted()Methode() ➝ Bool

Git True zurück, wenn das Parameter-Objekt in der Datenbank gelöscht wude (d.h. wenn state "deleted" ist).