2012-06-16 73 views
1

我正在使用django-livesettings將網站標題保存到數據庫。爲了能夠訪問配置值,但是,你需要通過一個視圖的變量傳遞到模板:Django Admin將變量傳遞給base_site.html

http://django-livesettings.readthedocs.org/en/latest/usage.html#accessing-your-value-in-a-view

什麼方法admin.ModelAdmin類的我可以覆蓋到變量傳遞給base_site .html,管理網站標題「Django Site Admin」所在的位置?

這個答案可能會接近,但我不知道是什麼錯過: Django how to pass custom variables to context to use in custom admin template?

+0

如何自定義[背景處理器]覆蓋base_site.html本身(https://docs.djangoproject.com/en/dev/ref/templates/api/#subclassing-context-requestcontext)將添加您需要模板上下文的生活設置變量? – draganHR

回答

0

第二個環節是有關添加額外的變量到ModelAdmin的修改列表頁面。
base_site.html是由許多的管理頁面,從而看法延長,如果你想要一些全球變化,你需要或者擴展了所有相關視圖環境中,或通過setting a variable in the context

+0

哪個視圖應該添加上下文變量? – yretuta

+0

@Ygam它取決於您的要求:自定義生效的管理頁面。您可以檢查'django.contrib.admin.sites.get_urls()'和'django.contrib.admin.options.get_urls()'以找出實際管理視圖所在的位置。像'index','change_view ','change_list'通常提供API(簽名中的'extra_context = None')用於添加額外的上下文。你可以擴展'AdminSite'和'ModelAdmin'來實現它。如果您的自定義是全局性的,只需在模板加載過程中將'base_site.html'複製到具有較高優先級的目錄並修改它即可覆蓋'base_site.html'。 – okm