• 如何在Google App Engine上构建一个简单的应用


    一位用户在学习使用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 &copy; 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 上运行了。

    其实总体来说还是挺简单的,注意几个文件已经目录指向,正常来说不会出现太大问题。如果各位还有不懂的地方可以留言讨论。

  • 相关阅读:
    Redis
    全面解析UDP协议(特点、报文格式、UDP和TCP的区别)
    erlang练习题(四)
    【计算机图形学】光线追踪 Ray Tracing
    第五章 数组和广义表
    MacOS(M1)交叉编译安卓版本OpenCV(附带FFmpeg)
    硬盘数据丢失怎么办?电脑硬盘恢复,3个步骤
    概率论与数理统计(第一章 概率论的基本概念)
    创建对象在Heap堆区中如何分配内存
    Vue中使用Switch开关用来控制商品的上架与下架情况、同时根据数据库商品的状态反应到前台、前台修改商品状态保存到数据库
  • 原文地址:https://blog.csdn.net/weixin_44617651/article/details/139436032