嘿,我正在尝试与/ remote_api一起使用我运行的django-patch应用引擎应用程序。
我想在本地的在线制作应用中选择几行。
我似乎无法设法这样做,一切都认证很好,它没有打破进口,但当我尝试取东西它只是不打印任何东西。 将测试python放在我的本地应用程序目录中。
#!/usr/bin/env python
#
import os
import sys
# Hardwire in appengine modules to PYTHONPATH
# or use wrapper to do it more elegantly
appengine_dirs = ['myworkingpath']
sys.path.extend(appengine_dirs)
# Add your models to path
my_root_dir = os.path.abspath(os.path.dirname(__file__))
sys.path.insert(0, my_root_dir)
from google.appengine.ext import db
from google.appengine.ext.remote_api import remote_api_stub
import getpass
APP_NAME = 'Myappname'
os.environ['AUTH_DOMAIN'] = 'gmail.com'
os.environ['USER_EMAIL'] = 'myuser@gmail.com'
def auth_func():
return (raw_input('Username:'), getpass.getpass('Password:'))
# Use local dev server by passing in as parameter:
# servername='localhost:8080'
# Otherwise, remote_api assumes you are targeting APP_NAME.appspot.com
remote_api_stub.ConfigureRemoteDatastore(APP_NAME,
'/remote_api', auth_func)
# Do stuff like your code was running on App Engine
from channel.models import Channel, Channel2Operator
myresults = mymodel.all().fetch(10)
for result in myresults:
print result.key()
它不会给出任何错误或打印任何内容。所以remote_api控制台示例谷歌得到了。当我打印myresults时,我得到[]。
答案 0 :(得分:2)
App Engine补丁monkeypat the ext.db模块,破坏了类名称。您需要确保从脚本中导入App Engine补丁,以便让它有机会按照惯例进行修改,或者您不会看到任何返回的数据。