2011-12-05 69 views
9

我是django新手,我正在爲我的網站開發管理控制檯。我需要有相關的選擇字段,以便在選擇國家後,用戶將能夠選擇城市。我想,當我選擇國家,那個國家的城市選項加載在城市選擇框,但我不知道如何自定義Django管理員。我在JS中這樣做,使用AJAX和PHP。所以我知道如何手動執行它,但不知道如何在django中使用ajax以及如何定製它。定製django的管理員有依賴選擇字段

在其他一些問題上,我讀了一篇應該閱讀的django文檔,所以我試圖閱讀並在管理文檔中找到,但無法找到自定義django管理面板的方法。我是否需要爲這些選擇框自定義整個頁面?或者請告訴我如何添加一些jQuery代碼,以便我可以通過JS來做到這一點?

回答

10

您可能想要使用django smart selects中的功能分組選擇。自述:

如果你有以下型號:

class Location(models.Model) 
    continent = models.ForeignKey(Continent) 
    country = models.ForeignKey(Country) 

而且你想,所有的國家都受到大陸分組和組在選擇更改用於以下:

from smart_selects.db_fields import GroupedForeignKey 

class Location(models.Model) 
    continent = models.ForeignKey(Continent) 
    country = GroupedForeignKey(Country, "continent") 
+0

謝謝是的,這是我一直在尋找 – Hafiz

0

關於如何自定義django管理員確實有很好的文檔。例如,Here,您可以看到如何重新定義管理模板。

儘管如此,如果您提出了更簡單的方法,您建議添加一些JavaScript代碼,以增加字段的額外行爲。您可以使用該代碼將js文件指向模型的管理員,如here所述。

+0

感謝您的迴應Facundo Olano和幫助 – Hafiz