Nehmen wir an, ich habe ein Benutzer- und ein UserType-Modell. Ich möchte einen Verweis auf die UserType-ID im Benutzermodell hinzufügen. Die Swagger-Dokumentation zeigt nur, wie man sich auf ein anderes (ganzes) Modell bezieht, nicht nur auf eine seiner Eigenschaften.So verweisen Sie auf eine ID einer anderen Modelldefinition in Swagger
Also habe ich mich gefragt, ob es überhaupt möglich ist, nur auf eine Eigenschaft einer anderen Modelldefinition zu verweisen.
"definitions": {
"User": {
"required": [
"username",
"typeId"
],
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"username": {
"type": "string"
},
"typeId": {
"$ref": "UserType.id" // ==> this doesn't work! and without
// the ".id" part it would include all
// the properties of UserType
}
}
},
"UserType": {
"required": [
"name"
],
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
}
}
}
}
Oder ist das gar nicht möglich und es sollte immer nur sein:
"definitions": {
"User": {
...
"properties": {
"typeId": {
"type": "integer",
"format": "int32"
}
}
},
...
}
Bevor ich auf die Antwort eingehe, warum möchten Sie auf eine * primitive * Definition verweisen? Was rettet dich das schriftlich? – Ron
Ich denke, es wäre klarer für jeden, der die REST-Dokumentation liest, um das "verknüpfte" Modell zu sehen. – roberkules
Und falls ich den Typ von UserType.id ändern müsste, müsste ich nicht alle Referenzen aktualisieren. – roberkules