我的GAE python开发数据存储永远不会被保存到文件中
我刚开始使用GAE(Python 2.7 SDK 1.6.4),我已经在Windows XP(SP3)的eclipse(indigo)中使用Pydev(最新版本)建立了一个简单的测试项目。
它一切正常,我的应用程序可以在数据存储区和blobstore中记录数据,然后检索它,但是当我停止开发服务器并再次启动时,数据存储区中的数据将丢失。 对于保留blob的blobstore来说并不是这样,我可以看到在C: Temp中创建的blobstore文件夹
我做了明智的事情并回顾了老帖子,发现大多数有这个问题的人通过改变数据存储文件的位置来解决它,所以我使用了以下参数;
--datastore_path="${workspace_loc}/myproject/datastore"
--blobstore_path="${workspace_loc}/myproject/blobstore"
"${workspace_loc}/myproject/src"
您可以在同一时间移动blobstore。
blobstore仍然有效,现在blobstore文件夹按照预期在myproject文件夹中创建。 数据存储文件仍然没有被创建,当我停止并重新启动开发服务器时,数据仍然丢失。
dev服务器启动日志包含以下条目
WARNING 2012-04-20 10:49:04,513 datastore_file_stub.py:513] Could not
read datastore data from C:myworkspacemyprojectdatastore
所以我知道它试图在正确的地方创建数据存储。
最后,我解除了整个eclipse workspace文件夹,并将其复制到另一台具有完全相同设置的计算机,除了它运行Windows 7而不是Windows XP。
一切工作正常 - 数据存储文件和blobstore文件夹现在都创建在我期望的位置。
我已经在两台计算机上以完全相同的方式设置了eclipse,python,gae,我的项目和我的eclipse启动文件,它在一个而不是另一个上运行。 也许XP与它有关,但说实话我认为这不太可能。
我唯一想到的另一个线索是,GAE开发服务器的最近更改在每次更改后都停止写入数据存储区文件,并且只在退出时刷新,这个问题可能与我的密切相关;
App Engine本地数据存储内容不会保留
但是,将以下代码添加到我的代码中根本没有帮助。
from google.appengine.tools import dev_appserver
import atexit
atexit.register(dev_appserver.TearDownStubs)
所以这不是不正确的终止顺序,只要我可以告诉,虽然它可能是我刚刚添加它在错误的地方(我是新的python)。
无论如何,我很难过,我会很感激你们提出的建议。
这可能是http://code.google.com/p/googleappengine/issues/detail?id=7244和一个错误。 希望很快就会有一个解决方案。
你试过了吗:
--storage_path = ...
除非被--datastore_path,--blobstore_path,--logs_path等覆盖,否则将存储所有本地文件(例如Datastore,Blobstore文件,Google云存储文件,日志等)的路径。
在https://developers.google.com/appengine/docs/python/tools/devserver?csw=1找到
链接地址: http://www.djcxy.com/p/67455.html上一篇: My GAE python development datastore is never persisted to a file