是否有可能为正在开发的应用程序提供类似remote_api_shell.py的功能。 remote_api_shell.py要求我们指向已部署的应用程序并提供repl控制台。我在使用remote_api_shell时发现了以下限制,如果我将os.chdir添加到我的开发目录中,我无法使用我使用google apis编写的模块。
我觉得需要本地控制台,因为我正在尝试对正在开发的应用程序进行数据建模,我不得不经常尝试/更改我的模型,而无需通过请求处理层或上传应用程序。这可能适合在交互式会话中尝试Model的各种功能。 con.appspot.com在浏览器中提供控制台,我觉得不适合编写类或导入小型测试模块。
这样的东西不起作用,因为它需要_app来保持。
import setapipaths # Sets the paths to google appengine apis
import sys
from google.appengine.ext import db
class TodoList(db.Model):
name = db.StringProperty(required=True)
class TodoItem(db.Model):
user = db.UserProperty(required=True)
date = db.DateTimeProperty(auto_now_add=True)
belongs_to = db.Reference(TodoList)
description = db.StringProperty(multiline=True)
rating = db.IntegerProperty(required=True)
score = db.IntegerProperty(required=True)
todolist = TodoList()
todolist.name = "firstline"
todolist.put()
obj1 = TodoItem(user='senthil',belongs_to=todolist.key(),description="something",rating=10,score=5)
obj1.put()
答案 0 :(得分:1)
卫生署!我发布这个问题后立即找到了答案。
第1步:在一个shell会话中运行您的应用程序欠开发
python dev_appserver.py app
默认情况下,应用程序在端口8080下运行
步骤2:打开另一个shell会话,并使用remote_api_shell.py连接到正在运行的实例。
PYTHONPATH=. remote_api_shell.py -s localhost:8080 app
在那里,您将获得用于试验的应用控制台。
以前我试图在本地应用程序上使用remote_api_shell.py
,而不运行它。
更新:此外,我发现http://localhost:8080/_ah/admin/interactive控制台提供了编写完整代码段的功能。