MainPage 处理程序 views.py

一般导入,使用 jinja2 将模板填充到 htmls 中。

import jinja2
import webapp2

使用用户 API 的重要导入:

from google.appengine.api import users

Jinja 环境的设置:[在示例中选择将信息填充到前端的技术]

JINJA_ENVIRONMENT = jinja2.Environment(
       loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
       extensions=['jinja2.ext.autoescape'],
       autoescape=True)

具体处理程序:

class MainPage(webapp2.RequestHandler):
   def get(self):

       user = users.get_current_user()
       if user:
           url = users.create_logout_url(self.request.uri)

你可以在此处为用户添加更多逻辑 **

       else:
           url = users.create_login_url(self.request.uri)

使用 jinja2 传递信息的模板。对于此示例,用户对象和 url 字符串。

       template_values = {
           'user': user,
           'url': url,
       }

       JINJA_ENVIRONMENT.add_extension('jinja2.ext.do')

使用 index.html 示例。 [传统的 html 页面]

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