1
有兩個模型是這樣的:我如何查詢跨多個表最新記錄在Django
class Node(models.Model):
user = models.ForeignKey(User, null=False)
name = models.CharField(max_length=50)
class Activation(models.Model):
node = models.ForeignKey(Node, null=False)
active = models.BooleanField(default=False)
datetime = models.DateTimeField(default=datetimeM.datetime.now)
激活表中存儲一個給定的節點是否是「主動」與否。因此,要確定節點是否處於活動狀態,需要獲取該節點的最新激活記錄。
我想弄清楚如何編寫一個返回所有活動節點的django查詢。
下面是一些示例數據
Node Table
id | name
--------------------
0 | andrew
1 | bill
2 | bob
Activation Table
id | nodeId | active | datetime
--------------------
0 | 0 | false | 01-01-2013:00:01:02
1 | 0 | true | 01-02-2013:00:01:02
2 | 0 | false | 01-03-2013:00:01:02
3 | 1 | false | 01-04-2013:00:01:02
4 | 0 | true | 01-05-2013:00:01:02
5 | 1 | true | 01-06-2013:00:01:02
6 | 2 | false | 01-07-2013:00:01:02
所以查詢需要返回[NODE0,節點1]
感謝@UnLiMiTeD的回覆,但我不確定自己明白。 'all_active_notes'只是一個有點活躍的節點列表。我錯過了什麼嗎? – Hamish 2013-02-18 12:07:50
是的。也許我想念這個問題。 – UnLiMiTeD 2013-02-18 12:20:55
我已經添加了一些示例數據和預期的答案。我看了一下你建議的帖子,但我認爲這對我沒有幫助。 – Hamish 2013-02-19 00:46:47