考慮兩個Django模型「用戶」和「棋盤遊戲」,後者有一個多對多場通過表一中自定義的「票」:雙向表和Django的ORM
class Vote(models.Model):
user = models.ForeignKey(User)
boardgame = models.ForeignKey(BoardGame)
vote = models.IntegerField()
我需要打印兩頂部有用戶名稱,左側列板遊戲名稱和中間投票。
有沒有辦法使用django來獲取這個? (請記住,用戶可能不會投票每一個棋盤遊戲。)
UPDATE:更多詳細
1)顯然,這可以使用Python的一些線(這可能會導致許多查詢要制定出數據庫),但我更感興趣的是發現django中是否有直接實現的功能可以完成這項工作。畢竟ManyToMany字段只不過是一個雙向表(在這種情況下與一些數據關聯)。
2)一個可能的'解決方案'將是一個完整的外部連接使用原始查詢,但是,再次,我正在尋找內置Django內置的東西。
3)更具體地說,我使用基於類的視圖,我想知道是否存在適當的查詢來關聯到ListView的queryset參數。
你嘗試過這麼遠嗎?模型定義了數據庫模式,理論上你可以存儲和檢索你想要的數據,但是你需要建立你的視圖和模板(加上任何css或js)來顯示錶格 – br3w5 2014-09-05 20:44:56
請看我的更新部分題。 – Sirion 2014-09-05 21:38:01