是否有可能与远程数据存储一起运行dev_appserver.py? [英] Is it possible to run dev_appserver.py with the remote datastore?
问题描述
我正在用Google的AppEngine开发一个网络应用程序。我想使用 dev_appserver.py
在本地迭代代码。但是,如果没有我部署的应用程序的数据存储中的所有数据,就很难做到这一点。我现在运行一个脚本来填充本地数据存储,但它需要大约15-20分钟的时间来填充。
是否有可能为 dev_appserver.py
连接到我部署的应用程序的数据存储区?
是的,这是可能的。 / p>
首先,打开app.yaml中的remote-api,并在生产环境中部署应用程序。
builtins:
- remote_api:on
然后,例如在appengine_config.py:
从google.appengine.ext.remote_api导入os
从google导入remote_api_stub
.appengine.datastore.entity_pb import参考
remote_api_stub.ConfigureRemoteApi(app_id = None,path ='/ _ ah / remote_api',
auth_func = lambda:('email','password') ,
servername ='appid.appspot.com')
如果os.environ ['SERVER_SOFTWARE']。s tartswith('Development'):
Reference.app = lambda * args:os.environ ['APPLICATION_ID']。replace('dev〜','s〜')
如果您有旧的应用程序ID,您可能需要编辑.replace('dev'...)部分。
I'm developing a web app with Google's AppEngine. I'd like to iterate on the code locally using dev_appserver.py
. But it's hard to do this without all the data in my deployed app's datastore. I currently run a script to populate the local datastore, but it takes on the order of 15-20 minutes to populate.
Is it possible for dev_appserver.py
to connect to my deployed app's datastore?
Yeah, it is possible.
First, turn on remote-api in app.yaml and deploy the application on production.
builtins:
- remote_api: on
Then, for example in appengine_config.py:
import os
from google.appengine.ext.remote_api import remote_api_stub
from google.appengine.datastore.entity_pb import Reference
remote_api_stub.ConfigureRemoteApi(app_id=None, path='/_ah/remote_api',
auth_func=lambda: ('email', 'password'),
servername='appid.appspot.com')
if os.environ['SERVER_SOFTWARE'].startswith('Development'):
Reference.app = lambda *args: os.environ['APPLICATION_ID'].replace('dev~', 's~')
If you have old application ID you may need to edit .replace('dev'...) part.
这篇关于是否有可能与远程数据存储一起运行dev_appserver.py?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!