一位用户在学习使用Python语言进行Google App Engine开发时遇到了困难,他希望构建一个简单的应用程序,该应用程序可以从用户处获取姓名,将姓名写入数据存储,然后检索姓名并显示页面。他尝试了教程,但仍然不了解如何实现。
解决方案
另一个用户提供了详细的代码示例,帮助该用户解决了问题。代码示例包括了如何创建主文件、模板、登录页面和内容页面。
以下是代码示例:
# main.py
from google.appengine.api import users
from google.appengine.ext import webapp
from google.appengine.ext.webapp import template
from google.appengine.ext.webapp.util import run_wsgi_app
# 首页
class MainPage(webapp.RequestHandler):
def get(self):
if users.get_current_user():
url = users.create_logout_url(self.request.uri)
url_linktext = "Bem Vindo: "+ str(users.get_current_user()) + ". Logout "
else:
url = users.create_login_url(self.request.uri)
url_linktext = ' Entrar '
values = {
'url': url,
'url_linktext': url_linktext,
}
self.response.out.write(template.render('templates/index.html', values))
application = webapp.WSGIApplication([
('/', MainPage),
],debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
# templates/base.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link href="styles/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="mainContainer">
<!--menu-->
<div id="menu">
<ul id="menuUl">
<li class="selected"><a href="/"> Inicio </a> </li>
<li><a href="#">Sobre</a></li>
<li><a href="#">Else</a></li>
<li><a href="#">Portfolio</a></li>
<li><a href="#">Contacto</a></li>
</ul>
</div>
<!--End menu-->
</div>
<hr />
<!--End Navigation-->
<div id="header" >
{% block header %} {% endblock %}
</div>
<div id="contentContainer">
<!--content-->
<div id="content">
{% block main %} {% endblock %}
</div>
<div id="contentBottom" >
<div id="contentBottomLeft"></div>
<div id="contentBottomRight"></div>
</div>
</div>
<div id="footer">
<div id="footerMenu">
<ul>
<li class="selected"><a href="/"> Inicio </a> </li>
<li><a href="#">Sobre</a></li>
<li><a href="#">Ipca</a></li>
<li><a href="#">Portfolio</a></li>
<li><a href="#">Contacto</a></li>
</ul>
</div>
<p>Copyright © 2010 Martin . Todos os direitos reservados.</p>
</div>
</div>
</div>
</body>
</html>
# templates/index.html
{% extends "base.html" %}
{% block header %}
<div class="hello">
<a href="{{ url }}">{{ url_linktext }}</a>
</div>
{% endblock %}
{% block main %}
<h1>Um pouco de palha</h1>
<p class="smallSubtitle">Isto e mais palha .......</p>
{% endblock %}
按照提示操作,完成部署后,你的应用程序就可以在 Google App Engine 上运行了。
其实总体来说还是挺简单的,注意几个文件已经目录指向,正常来说不会出现太大问题。如果各位还有不懂的地方可以留言讨论。