2017-09-21 81 views
0

的過濾器只有最新的記錄我有一個表像這樣 事件表如何獲得外鍵的Django

| id |狀態|日期(FK)|

| 1 |計劃| 05-02-2015 | 1 |

| 2 |交付| 04-02-2015 | 2 |

| 3 |包裝| 03-02-2015 | 3 |

| 4 |返回| 06-02-2015 | 1 |

我想要這樣的輸出

| id |狀態|日期(FK)|

| 2 |交付| 04-02-2015 | 2 |

| 3 |包裝| 03-02-2015 | 3 |

| 4 |返回| 06-02-2015 | 1 |

我試過 query = Event.objects.annotate(order_num = Max('date')) 但沒有得到預期的結果。 我如何可以使用以下實現這個輸出

回答

1

嘗試:

from django.db.models import Max 

Event.objects.annotate(max_date=Max('order__event__date')) \ 
      .filter(date=F('max_date')) 
+0

感謝@ user6731765,它解決了我的問題 – Brijesh

+0

如果解決你的問題,不要忘記voteup和accep它 –