• google云的数据库


    最近改一个小程序,需要用到google云上的数据库功能。学习了一点相关知识。

    对于应用来说,首先要app.yaml申明自己

    application: a
    version: 1
    runtime: python
    api_version: 1
    
    handlers:
    - url:/xx
      script: xx.py
    - url:/yy
      script: xx.py
    - url:/zz.py
      script: zz.py
    

     第一部分四行比较简单,handlers这里是告诉云,访问连接后跟的路径用哪一个脚本去处理,比如在这里,application叫做a,那么访问a.appspot.com/xx,是用xx.py处理,如果访问a.appspot.com/yy,也是用xx.py处理。如果是访问a.appspot.com/zz.py,则用zz.py处理。

    然后,云就会执行相应的python文件

    #! /usr/bin/env python
    #
    coding=utf-8
    import wsgiref.handlers,
    from google.appengine.ext import webapp
    from google.appengine.api import db

    def data_test(db.Model):
    link=db.LinkProperty()
    method=db.StringProperty()
    header=db.TextProperty()
    date=db.DateTimeProperty(auto_now_add=True)
    data=db.STringProperty(multiline=True)

    class Main(webapp.RequestHandler):
    def post(self):
    ...
    def get(self):
    ...

    class Minor(webapp.RequestHandler):
    def post(self):
    ...
    def get(self):
    ...


    def main():
    application=webapp.WSGIApplication([("/xx",Main),("/yy",Minor)])
    wsgiref.handlers.CGIHandler().run(application)

    if __name__=="__main__":
    main()

    执行py文件以后,python文件通过

    application=webapp.WSGIApplication([("/xx",Main),("/yy",Minor)])

    这句话决定调用哪个类来处理请求,在这里访问/xx的用Main,访问/yy的用Minor,然后相应调用各个类下的post,get方法来给出页面。

    对于数据库gql来说,则通过

    def data_test(db.Model):
    link=db.LinkProperty()
    method=db.StringProperty()
    header=db.TextProperty()
    date=db.DateTimeProperty(auto_now_add=True)
    data=db.STringProperty(multiline=True)
    data1=data_test(parent=dataft)
    data.link=...
    data.put()

    来定义数据库自己,首先类data_test是从db.Model继承来的,然后在这个类里定义了各个key,在赋值以后,通过put更新进数据库
    查询则可以通过db.GqlQuery命令

    datas=db.GqlQuery("SELECT * FROM data_test WHERE ANCESTOR IS :1 ORDER BY date DESC",dataft)
    for i in datas:
    i.link....
    删除
    db.delete(i)

    删除则可以通过db.delete删除。

  • 相关阅读:
    文件数据源设置
    维护0material主数据,提示Settings for material number conversion not found
    7.5版本COPA数据源创建转换提示“不允许对象名称为空”
    COPA指标自动创建
    IDEA操作数据库
    Docker(快速实战流程)
    Docker(理论部分小结)
    Docker数据卷挂载相关
    解决pycharm启动updating Python interpreter长时间更新
    IDEA完美配置(shell)linux的命令行工具
  • 原文地址:https://www.cnblogs.com/sickboy/p/2436061.html
Copyright © 2020-2023  润新知