2017-03-27 5 views
0

私は2つのモデル:カメラとタイムスタンプを持っています。タイムスタンプには、カメラへの外部キー、タイムスタンプ、および現在の状態があります。最新の状態が偽であるカメラをすべて返却したい。Djangoビュー戻りすべてのオブジェクトの最新状態がfalseです

'faulty': Camera.objects.filter(timestamp__state=False) 

タイムスタンプがfalseのカメラをすべて返します。しかし、私はちょうど最新のtimestamp_stateのカメラが偽であることを望みます。

答えて

0

また、あなたのクエリに最新のタイムスタンプに注釈を付けた後、その状態に対してクエリを実行することができます。 Camera.objects.all()、 '障害のある':私はこの本「文脈= { 「カメラのようなクエリを行った場合

from django.db.models import F, Max 

Camera.objects.annotate(latest_timestamp=Max('timestamp__datetime')).filter(latest_timestamp=F('timestamp__datetime'), timestamp__state=False) 
+0

:このような何かは、トリックを行う必要がありCamera.objects.annotateを(latest_timestamp =最新( 'timestamp__timeStamp'))。フィルター(latest_timestamp = F( 'timestamp__timeStamp')、timestamp__state = False)、 } "どうすれば現在の状態を参照できますか? – Sdude13

関連する問題