【问题标题】:Tables not getting fetched when deploying web2py app on GAE在 GAE 上部署 web2py 应用程序时未获取表
【发布时间】:2023-04-10 10:30:01
【问题描述】:

当我尝试在 google 应用引擎上部署 web2py 应用时,我使用 db.define.table 定义的表没有被导入,因为我无法从任何此类表中检索任何行。

虽然在 db.py 中我使用了谷歌数据存储。

if not request.env.web2py_runtime_gae:
    ## if NOT running on Google App Engine use SQLite or other DB
    db = DAL('sqlite://storage.sqlite',pool_size=1,check_reserved=['all'])
else:
db = DAL('google:datastore')
from gluon.contrib.memdb import MEMDB
from google.appengine.api.memcache import Client
session.connect(request, response, db = MEMDB(Client()))

只有我做了这些改变。在将其托管到 GAE 时,html 页面不显示要从表中获取的那些内容。它显示的其余内容。 我第一次在 GAE 上部署一些东西。我刚刚在 web2py 文件夹中添加了 app.yaml 和 queue.yaml 并相应地编辑了 app.yaml。

求助!!

【问题讨论】:

  • 您是说您在本地运行应用程序(因此使用 SQLite)并且现在已部署到 GAE,但您不再看到您在本地输入的数据?如果是这样,那符合预期,因为您没有将数据从 SQLite 复制到 GAE。
  • @Anthony 现在我明白了。实际上,我在云数据存储中创建了实体并在那里复制了数据条目,现在我可以在 GAE 中访问这些数据。但我无法在这些实体中上传图像,因为只允许字符串、布尔值、键、日期时间、数字和键。
  • 这与这个问题完全无关。阅读s.o.常见问题解答并提出一个新问题。

标签: python database google-app-engine web2py


【解决方案1】:

您只在本地存储了数据。它是一个开发环境。部署后,您还需要在生产存储服务(如 sql、datastore、blobstore 等)上创建数据。
稍后当您部署新版本时,数据仍将存在。所有版本共享相同的存储空间。

【讨论】:

  • 谢谢,但我无法在云数据存储实体中上传图片
  • 这与原始问题或此答案完全无关。
  • 是的,我的错。现在我在stackoverflow.com/questions/29543055/… 提出了一个新问题。请帮忙
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-06-02
  • 1970-01-01
  • 2016-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多