Ich habe eine Datenstruktur ziemlich ähnlich der auf der Loopback HasManyThrough Dokumentation Seite beschrieben.Return-Join-Tabelle Attribute inklusiv mit Loopback
Für einen bestimmten Arzt (z. B. ID 2), würde ich gerne alle ihre Patienten mit einem Termin und deren Verabredung Datum bekommen.
Ich kann einen GET
Betrieb wie folgt tun:
GET /physicians/2
mit dem filter
Kopf { "include" : {"relation":"patients"} }
Und das tue ich den Arzt bekommen, und die Liste der Patienten, aber ich verliere die appointmentDate
von die Beziehung.
Oder ich kann auf der Beziehungstabelle wie die Dokumentation einen GET
Betrieb tun zeigt:
GET /appointments
mit dem filter
Kopf { "include" : {"relation":"patient"}, "where":{"physicianId":2}} }
Und ich die Termine zu bekommen, mit dem Datum und der Patient eingebettet, aber nicht die Details des Arztes.
Ich kann nicht in der Lage sein, die beiden zu kombinieren.
Gibt es eine Möglichkeit, die gesamten Daten mit einer Abfrage zu erhalten?
Die Daten würden so etwas wie dieses:
[
"name" : "Dr John",
"appointments" : [ {
"appointmentDate": "2014-06-01",
"patient": {
"name": "Jane Smith",
"id": 1
}
}]
]
One
Weg
Hack, den ich gefunden wird zweimal die Beziehung zu definieren. Einmal als HasManyThrough
und einmal als ein HasMany
an den Tisch Termine, dann kann ich etwas tun:
GET /physicians/2
mit dem filter
Kopf { "include" : {"relation":"appointments","scope":{"include":["patient"]} } }
Aber das scheint nicht richtig, oder könnte führt vielleicht zu seltsamen Verhaltensweisen mit der duplizierten Beziehung ... aber vielleicht bin ich paranoid.
Dank Ivan, das bestätigt die Dinge. Ich hatte dieses GitHub-Problem nicht gefunden, und die damit verbundene SO-Frage, beide gut liest. – Ben