我想在數據庫中存儲一些模板以進行自定義渲染。我用來自數據庫的字符串創建一個Template
對象,然後使用render
方法。到現在爲止還挺好。現在如何判斷模板從哪裏加載文件?
我想能夠使用擴展機制,以至於連基本模板可以從數據庫加載到從另一個與{% extends %}
標籤加載模板。我意識到擴展機制起作用並使用設置中給出的全局配置。所以我可以從我的模板加載器中的文件擴展。我還可以添加我的自定義加載程序以在數據庫中查找數據源。不過,我希望我的TemplateLoader知道哪個數據庫對象是第一個模板的來源,並根據它查找基礎文件。
我希望鉤入Template對象來指定自定義的TemplateLoaders而不是全局的TemplateLoaders。我查看了文檔和源文件,但未能找到這樣的鉤子。
任何提示?
** CLARIFICATION ** 由於我得到了答案,我試圖澄清這個問題。假設我有一個模板來呈現我的數據庫的某種對象。該模板使用{%extends「base.html」%}將網站的基本佈局加載到框架文件中。現在假設對於其中一些對象(例如基於對象中的屬性),我想修改基本文件(而不是模板!)。我如何實現這一目標?
也許應該使用jinja而不是django模板 –