2014-01-11 122 views
0

我已經安裝了Google App Engine; GAE發射器GUI;和Python SDK。使用Google的App Engine和Python SDK

我已經使用GUI成功部署了一個網頁,現在我的測試頁面可以在外部URL中查看。

不幸的是,我知道這樣做的唯一方法是將我所有的HTML代碼包含在GAE目錄中的Python .py文件中。我想要做的是在我的.py文件中包含調用單獨.html文件的代碼。到目前爲止,儘管我最好的搜索努力,我不明白如何寫這個。任何人都可以幫忙嗎?

預先感謝

+2

您是否閱讀過文檔?它向你展示瞭如何在Python中使用Jinja2模板。 –

+0

GAE文檔充滿了關於如何使用模板和資產的示例,您是否閱讀了這些示例? –

+0

嗨,丹尼爾。感謝回覆。我已經按照幫助頁面的指示來包含Jinja2(即添加對.yaml文件的引用)。但是,當我這樣做,然後嘗試在GAE GUI中運行我的Web應用程序時,它不能這樣做。除了出現一個小小的綠色圓圈外,還有一個「!」顯示警告三角形。之後,我無法訪問網頁應用程序,或者瀏覽器在訪問http:// localhost:8080(由Google GUI分配的端口)時加載頁面。 – user3185382

回答

1

首先,在終端(或命令行)使用pip安裝的Jinja2:

pip install jinja2 

其次,它包括在你app.yaml文件作爲一個庫。

libraries: 
- name: webapp2 
    version: "2.5.2" 
- name: jinja2 
    version: "2.6" 

在你的代碼聲明一個神社的環境,讓你可以渲染模板:

import jinja2 

env = jinja2.Environment(
    loader=jinja2.FileSystemLoader('templates') 
) 

現在,您需要在「模板」文件夾中創建一個模板.html文件。如果我們創造,我們要在代碼中渲染「的index.html」模板中,我們可以這樣寫:

template = env.get_template('index.html') 
self.response.write(template.render()) 

顯然有很多,你可以用模板做的不是簡單地呈現HTML - 你可以看看功能Jinjas website

在google應用程序引擎的python教程中,更好地解釋了here的所有過程。

如果你需要一個例子,我最近開源了一個我在github上開發的谷歌應用程序引擎應用程序,如果你願意,你可以拿一個look at it作爲一些指導。