为什么我的HTML页面没有显示在Google App Engine的本地主机上?

时间:2013-10-07 17:42:37

标签: python html django google-app-engine

这是我的main.py文件和我希望由我使用的Jinja2模板呈现的html文件:

main.py

import os
import webapp2
import jinja2
from google.appengine.ext import db

template_dir = os.path.join(os.path.dirname(__file__), 'templates')
jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir),     autoescape=True)

class Handler(webapp2.RequestHandler):
    def write(self, *a, **kw):
        self.response.out.write(*a, **kw)
    def render_str(self, template, **params):
        t = jinja_env.get_template(template)
        return t.render(params)
    def render(self, template, **kw):
        self.write(self.render_str(template, **kw))

class MainPage(Handler):
    def get(self):
        self.render("temp.html")

app = webapp2.WSGIApplication([('/', MainPage)], debug=True)

temp.html

<!DOCTYPE html>
<html>
<head>
<style>
div#logo
{
 position: absolute;
 margin-top:5%;
 margin-left:25%;
}

div#cart
{
 position: absolute;
 margin-left:87%;
 margin-top:-2px;

}
</style>
</head>

<body>
<div id = logo><img src="logo.png" height = 60% width = 60%></div>
<div id = cart><img src="cart.jpg" height = 75 px ></div>
</body>
</html>

现在,我已将html文件与所需图像一起保存在app引擎应用程序目录的templates文件夹中。此外,当我在浏览器上运行它时,html文件工作正常。但是,当我使用GAE运行我的应用程序时,我得到的是一个空白屏幕。为什么会这样?为什么我的html文件没有呈现?

1 个答案:

答案 0 :(得分:0)

一些建议:

  1. 检查您的html是否实际渲染(在html文件中放入一些文字)
  2. 您的app.yaml文件需要包含放置照片的静态目录。有关示例,请参阅https://github.com/GoogleCloudPlatform/appengine-guestbook-python/blob/master/app.yaml
  3. 使用适合放置图像的位置的URL引用图像,例如如果您将它们放在“客户”目录下。
  4. https://github.com/GoogleCloudPlatform/appengine-guestbook-python

    很适合查看基本配置。