2 つの単純なモデルがあるとします。
class Place(models.Model):
name = models.CharField(max_length=200)
address = models.CharField(max_length=200)
class Event(models.Model):
name = models.CharField(max_length=200)
date = models.DateField()
place = models.ForeignKey(Place)
私が今やりたいことは、解決された場所で一連のイベントをクエリし、すべてを後で JSON に変換できる辞書のリストに変換することです。
最終結果は次のようになります。
[{
"name": "event1",
"date": "date1",
"place": {
"name": "place1",
"address": "address1",
},
},{
"name": "event2",
"date": "date2",
"place": {
"name": "place2",
"address": "address2",
},
},]
ValueQuerySet
これまでのところ、私は次の方法で運を試しました.values()
:
Event.objects.all().select_related("place").values()
ただし.values()
、コンテンツではなく関連オブジェクトの ID のみを返すため、これは機能しません。したがって、この種の変換を行う別の組み込みの方法があるかどうか、または QuerySet オブジェクトを反復処理して自分で変換する必要があるかどうか疑問に思っていました。