Feldoptionen

Sie können Ihren Feldern eine bestimmte Anzahl an Optionen zuordnen. Diese Optionen werden beim Generieren Ihrer Datenbanktabellen den entsprechenden Spalten zugewiesen. Wir implementieren derzeit folgende Optionen:

Option Beschreibung
unsigned Vorzeichenbehafteter Datentyp. Nur für Ganzzahlen.
default Standardwert.
comment Spaltenkommentar.

Feldoptionen anlegen

Beim Anlegen einer Option übergeben Sie den Namen und den Wert der entsprechenden Option:

curl -X POST "https://localhost/aaas/field/options" ...
{
  "name": "default",
  "value" : "Fancy product",
  "field" : "/aaas/service/fields/6"
}

Der Server antwortet mit der angelegten Option:

{
    "id": 4,
    "name": "default",
    "value": "Fancy product",
    "field": "/aaas/service/fields/6"
}

Feldoptionen bearbeiten

Sie senden einen HTTP-PUT-Request an den entsprechenden Endpunkt:

curl -X PUT "https://localhost/aaas/field/options/4" ...
{
  "value" : "Fancy category"
}
{
    "id": 4,
    "name": "default",
    "value": "Fancy category",
    "field": "/aaas/service/fields/6"
}

Feldoptionen anzeigen

Sie können sich alle Feldoptionen anzeigen lassen, die einem bestimmten Feld zugeordnet sind, indem Sie einen entsprechenden HTTP-Query-Parameter verwenden:

curl -X GET "https://localhost/aaas/field/options?field=1" ...
[
    {
        "id": 3,
        "name": "unsigned",
        "value": "false",
        "field": "/aaas/service/fields/1"
    }
]

Feldoptionen löschen

Sie senden einen HTTP-DELETE-Request an den entsprechenden Endpunkt:

curl -X DELETE "https://localhost/aaas/field/options/4"

Der API-Server antwortet mit dem HTTP-Statuscode 204.

Serialisierungsgruppen

Sie finden im Folgenden eine Übersicht der verwendeten Serialisierungsgruppen von Feldoptionen:

Gruppe Definition
field Serialisiert/Deserialisiert field-Attribute

Serialiserung von Feldern

Um zusätzlich zu den Feldoptionen die zugehörigen Felder serialisieren zu lassen, senden Sie einen entsprechenden HTTP-Query-Paramater und setzen ihn auf field:

curl -X DELETE https://localhost/aaas/field/options?field=1&groups[]=field ...
[
    {
        "id": 3,
        "name": "unsigned",
        "value": "false",
        "field": {
            "id": 1,
            "name": "email",
            "description": null,
            "dataType": "string",
            "length": 200,
            "dataTypePrecision": null,
            "dataTypeScale": null,
            "isUnique": true,
            "isNullable": false,
            "service": "/aaas/repository/services/2",
            "fieldOptions": [
                "/aaas/field/options/3"
            ],
            "constraints": [
            ],
            "relation": null
        }
    }
]