django クエリセットと select_related に関して小さな問題があります。
このモデルで:
class DeviceGroup(models.Model):
name = models.CharField(max_length=255, unique=True)
owner = models.ForeignKey(User)
class Device(models.Model):
name = models.CharField(max_length=255)
address = models.GenericIPAddressField()
port = models.IntegerField()
group = models.ForeignKey(DeviceGroup)
class Sensor(models.Model):
device = models.ForeignKey(Device)
次のようなリストを取得したい:
- group 1
- device 1
- device 2
- device 3
-sensor 1
- group 2
- group 3
- device 4
- device 5
- sensor 2
select_related() に関するドキュメントを読みましたが、グループの原因でクエリを開始する必要があるため、その方法がわかりません。ログに記録されたユーザーに直接リンクされています。