0
class Route(app_core_base_model.AbstractDefaultModel):
code = models.PositiveIntegerField(
verbose_name=_('code'),
default=0,
editable=True)
slug = models.SlugField(
verbose_name=_('slug'),
unique=True,
max_length=255,
blank=True,
null=True,
editable=True,
db_index=True)
class Route(app_core_base_model.AbstractDefaultModel):
code = models.PositiveIntegerField(
verbose_name=_('code'),
default=0,
editable=True)
slug = models.SlugField(
verbose_name=_('slug'),
unique=True,
max_length=255,
blank=True,
null=True,
editable=True,
db_index=True)
class StopPoint(app_core_base_model.AbstractDefaultModel):
route = models.ForeignKey(
Route,
verbose_name=_('route'))
station = models.ForeignKey(
app_core_models.Station,
verbose_name=_('station'))
arrival_time = models.TimeField(
verbose_name=_('arrival time'),
blank=True,
null=True,
editable=True)
departure_time = models.TimeField(
verbose_name=_('departure time'),
blank=True,
null=True,
editable=True)
class Station(app_core_base_model.AbstractDefaultModel):
name = models.CharField(
verbose_name=_('name station'),
max_length=255,
blank=True,
null=True,
editable=True)
slug = models.SlugField(
verbose_name=_('slug'),
unique=True,
max_length=255,
blank=True,
null=True,
editable=True,
db_index=True)
私は到着と出発地点の地点を通過するすべてのフライトを選択することができます要求を行うことができない3つのモデル を持っています。DjangoのネストされたクエリのPostgreSQL
通過するすべてのルートと出発地点を到着地点までどのように見つけることができますか?
は、私は、この決定は ルート= StopPoint.objects.filter(Q(station__slug =到着) Q(station__slug =出発))は私の意見ではあまりにも悪いです望んで達成しましたセット()経路でroutes_arrivalため : routes_arrival.station.slug場合==到着:ルートでroutes_departureため : routes_departure.station.slug場合==出発: routes_arrival.route.id場合== routes_departure.route。 idとroutes_arrival.order