擅长:python、mysql、java
<p><code>OuterRef</code>用于从父查询获取一个值,但是这里您根本不需要外部查询的引用。在</p>
<pre><code>from django.db.models.functions import ExtractHour
hour_filter = ExtractHour(
ExpressionWrapper(
F('article__created_on') + timedelta(0, avg_fp_time_in_seconds),
output_field=models.DateTimeField()
)
)
query = StatByHour.objects.filter(hour_of_day=<b>hour_filter</b>)</code></pre>
<p>所以这里不需要<code>OuterRef</code>。正如<a href="https://docs.djangoproject.com/en/dev/ref/models/expressions/#django.db.models.OuterRef" rel="nofollow noreferrer">documentation on <strong>^{<cd1>}</strong></a>所说:</p>
<blockquote>
<p>Use <code>OuterRef</code> when a queryset in a <code>Subquery</code> needs to <strong>refer to a
field from the outer query</strong>. It acts like an <code>F</code> expression except
that the check to see if it refers to a valid field isn’t made until
the outer queryset is resolved.</p>
</blockquote>