我有一个非常基本的 jinja 模板,它在显示 htm 时工作正常,但日志抱怨 favicon.ico,即使我在 / 和 /templates 中都有它。我做错了什么?另外,我的css加载是否出错?
import jinja2
import os
import logging
import webapp2
JINJA_ENVIRONMENT = jinja2.Environment(
loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
extensions=['jinja2.ext.autoescape'])
class MainHandler(webapp2.RequestHandler):
def get(self):
path = self.request.path
logging.info('from main %s', path)
if (path=='/'):
templa=JINJA_ENVIRONMENT.get_template('/templates/index.htm')
else:
templa=JINJA_ENVIRONMENT.get_template(path)
try:
self.response.write(templa.render({}))
except:
self.response.out.write('Error - unable to find %s' % path)
app = webapp2.WSGIApplication([('/.*',MainHandler)],
debug=True)
------ 仅显示错误 INFO 2013-10-07 19:44:53,500 index4.py:44] 来自主 /templates/topics.htm INFO 2013-10-07 19:44:53,516 dev_appserver.py:3103 ] “GET /templates/topics.htm HTTP/1.1”200 - 信息 2013-10-07 19:44:53,532 dev_appserver.py:3103] “GET /static/glike.css HTTP/1.1”304 - 信息 2013-10 -07 19:44:53,609 index4.py:44] 来自 main /favicon.ico 错误 2013-10-07 19:44:53,609 webapp2.py:1552] 'utf8' 编解码器无法解码位置 142 中的字节 0x96:无效的起始字节回溯(最近一次调用):文件“C:\Program Files\Google\google_appengine\lib\webapp2\webapp2.py”,第 1535 行,调用中 rv = self.handle_exception(request, response, e) File “C:\Program Files\Google\google_appengine\lib\webapp2\webapp2.py”,第 1529 行,通话中 rv = self.router.dispatch(request, response) File "C:\Program Files\Google\google_appengine\lib\webapp2\webapp2.py", line 1278, in default_dispatcher return route.handler_adapter(request, response) File "C :\Program Files\Google\google_appengine\lib\webapp2\webapp2.py",第 1102 行,通话中 return handler.dispatch() File "C:\Program Files\Google\google_appengine\lib\webapp2\webapp2.py", line 572, in dispatch return self.handle_exception(e, self.app.debug) File "C:\ Program Files\Google\google_appengine\lib\webapp2\webapp2.py”,第 570 行,在调度返回方法(*args,**kwargs)文件“C:\projects\apps\ae-07-grades\index4.py” ,第 48 行,在 get_template 中返回 self._load_template(name, self .make_globals(globals)) 文件“C:\Program Files\Google\google_appengine\lib\jinja2\jinja2\environment.py”,第 693 行,在 _load_template 模板 = self.loader.load(self, name, globals) 文件中“ C:\Program Files\Google\google_appengine\lib\jinja2\jinja2\loaders.py",第 115 行,在加载源、文件名、最新 = self.get_source(environment, name) File "C:\Program Files\Google\google_appengine\ lib\jinja2\jinja2\loaders.py”,第 169 行,在 get_source 内容 = f.read().decode(self.encoding) 文件“C:\Python27\lib\encodings\utf_8.py”,第 16 行,在decode return codecs.utf_8_decode(input, errors, True) UnicodeDecodeError: 'utf8' codec can't decode byte 0x96 in position 142: invalid start byte INFO 2013-10-07 19:44:53,641 dev_appserver.py:3103] "GET /favicon.ico HTTP/1.1" 500 -py”,第 169 行,在 get_source 内容 = f.read().decode(self.encoding) 文件“C:\Python27\lib\encodings\utf_8.py”,第 16 行,在解码中返回 codecs.utf_8_decode(input,错误,真)UnicodeDecodeError:'utf8'编解码器无法解码位置 142 中的字节 0x96:无效的起始字节 INFO 2013-10-07 19:44:53,641 dev_appserver.py:3103] “GET /favicon.ico HTTP/1.1” 500 -py”,第 169 行,在 get_source 内容 = f.read().decode(self.encoding) 文件“C:\Python27\lib\encodings\utf_8.py”,第 16 行,在解码中返回 codecs.utf_8_decode(input,错误,真)UnicodeDecodeError:'utf8'编解码器无法解码位置 142 中的字节 0x96:无效的起始字节 INFO 2013-10-07 19:44:53,641 dev_appserver.py:3103] “GET /favicon.ico HTTP/1.1” 500 -