2009-05-25 62 views
1

當ModelAdmin中包含字段「search_fields」時,Django在列表顯示頁面上創建一個搜索框。如何擴展django admin select?

我的一些在線模式的參考列表頁面上的項目。如果搜索框術語匹配這些內聯模型中的字段,我希望結果包括列表中的參照物。

示例:數據庫具有名稱表和地址表。對於每個名稱,可以有多個地址。每個地址都引用一個名稱。當我搜索名稱列表時,我希望能夠進入「大街」,搜索地址並顯示這些地址引用的名稱。

我想我將不得不重寫與搜索框相關聯的搜索功能。如果這是正確的,該功能位於何處?

回答

3

我不是百分之百肯定,我明白你的問題,但是你可以通過在管理類設置search_fields在列表中顯示相關字段進行搜索:

class MyAdmin(admin.ModelAdmin): 
    search_fields = ('name', 'name__address') 

中採用相同的雙下劃線您可以在普通的filter()調用中使用跨關係的語法。

+0

謝謝。我認爲這不會對我有用,因爲名稱記錄中沒有明確的地址字段。相反,地址記錄包含對「name」的引用作爲外鍵。 – Mitch 2009-05-25 20:22:13