Ich ziehe mir die Haare aus, weil das bei mir nicht funktioniert und es so aussieht, wie es sein sollte.Wie führe ich Django-Piston dazu, verwandte untergeordnete Objekte in die serialisierte Ausgabe einzubeziehen?
Ich benutze Django-Kolben, um eine API zu entwickeln und haben 2 Modelle, Building and Building Area.
BuildingArea hat einen Fremdschlüssel zum Gebäude, da es mehrere Bereiche in einem Gebäude gibt. Die 'related_name'-Eigenschaft für den FK ist' Bereiche ', so dass ich von einem gegebenen Gebäude aus auf die BuildingAreas zugreifen kann.
Das Problem ist, dass alles im Admin gut aussieht, aber wenn ich den Endpunkt /api/building.json triff, bekomme ich es das Building-Objekt ohne die geschachtelten BuildingArea-Objekte, die im JSON enthalten sind.
Ich hätte gedacht, dass Django-Piston standardmäßig Reverse FK Felder folgen würde oder fehlt mir etwas?
handlers.py
class BuildingHandler(BaseHandler):
allowed_methods = ('GET',)
model = Building
def read(self, name=None):
return self.model.objects.all()
models.py
class Building(models.Model):
address = models.CharField(max_length=255)
def __unicode__(self):
return self.address
class BuildingArea(models.Model):
display_name = models.CharField(max_length=30)
building = models.ForeignKey(Building, related_name='areas')
def __unicode__(self):
return self.display_name
ZEHN TAUSEND Upvotes zu Ihnen Herr (oder Frau). Oder mindestens eins. Irgendwie muss ich das vermisst haben. Piston überrascht mich immer wieder. – winsmith
So verrückt wie ich dachte, diese Antwort war, das ist die richtige. +1 und Lesezeichen für wenn ich es vergesse. –
Das hat mir jetzt viel Zeit gespart. – julkiewicz