2014-03-05 54 views
0

有沒有辦法從應用程序本身沒有託管的來源加載模板?例如,爲了裝載於應用本身的模板(由AppEngine上的應用程序託管):在GAE應用程序中加載外部模板?

html = template.render("admin/my_template.html", params) 

我想這樣做:

html = template.render("http://www.otherhost.com/external_template.html", params) 

有沒有一種機制,允許這樣的一個行爲?

謝謝

+0

你能舉一個你爲什麼想要這樣做的例子嗎?你確定外部文件實際上是一個Django模板,而不是一個簡單的靜態HTML頁面嗎? –

+0

如果文件是應用程序的一部分,每當我想要更改它時,我都需要重新部署整個應用程序。如果模板是外部的,我可以獨立編輯它。 – MeLight

+0

好吧,從外部網站加載它似乎並不是解決該問題的好方法 - 例如,考慮增加的延遲。也許你可以考慮從數據存儲或雲存儲中加載它? –

回答

0

Ofcourse您可以從其他應用程序加載模板。要加載模板,您必須獲取模板。

但使用編輯器也不是很困難。我使用codemirror來編輯HTML文本區域。 見演示的這個名單:http://codemirror.net/demo/

編輯神社TXT郵件模板例子:enter image description here

0

模板僅僅是字符串。如果您可以獲取文本,則可以將其解析爲模板。

在這種情況下,您需要使用urllib來請求文件,獲取響應,然後使用template.Template(content)將其轉換爲模板對象。

但是,我必須說我仍然認爲把它放在數據存儲區是一個更好的選擇。我不確定爲什麼你需要一個編輯器 - 爲什麼不剪切和粘貼內容到GAE管理控制檯中的某個字段,或者使用遠程API來設置它?

相關問題