これは私にはうまくいかず、そうあるべきだと思われるので、ここで髪を引っ張っています。
私は Django-Piston を使用して API を開発しており、Building と Building Area の 2 つのモデルがあります。
建物には複数のエリアがあるため、BuildingArea には Building への ForeignKey があります。FK の「related_name」プロパティは「areas」であるため、特定の建物から BuildingAreas にアクセスできます。
問題は、Admin ではすべて問題ないように見えますが、/api/building.json エンドポイントに到達すると、JSON にネストされた BuildingArea オブジェクトが含まれていない Building オブジェクトしか取得できません。
Django-Piston はデフォルトでリバース FK フィールドに従うと思っていましたか、それとも何か不足していますか?
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