Tyl*_*erW 4 python google-app-engine
我是一个python新手,开始在Google App Engine上使用Bottle Web框架.我一直在搞乱超小型,超级简单的Hello World样本,并且已经遇到了问题.嘿.我终于得到了代码来处理这个......
import bottle
from bottle import route
from google.appengine.ext.webapp import util
@route('/')
def index():
return "Hello World!"
util.run_wsgi_app(bottle.default_app())
Run Code Online (Sandbox Code Playgroud)
我的问题是,我想我可以在没有第二行的情况下去'导入瓶'.但如果我拿出第二行,我会得到一个NameError.或者如果我从'瓶子导入''',我仍然得到错误.bottle只是我网站根目录中名为'bottle.py'的单个文件.所以这些都不起作用......
import bottle
from google.appengine.ext.webapp import util
@route('/')
def index():
return "Hello World!"
util.run_wsgi_app(bottle.default_app())
Run Code Online (Sandbox Code Playgroud)
要么
from bottle import *
from google.appengine.ext.webapp import util
@route('/')
def index():
return "Hello World!"
util.run_wsgi_app(bottle.default_app())
Run Code Online (Sandbox Code Playgroud)
我得到的错误信息是......
Traceback(最近一次调用最后一次):
文件"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver.py",第3180行,在_HandleRequest self中._Dispatch(dispatcher,self.rfile,outfile,env_dict)文件"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver.py",line 3123,在_Dispatch base_env_dict = env_dict)文件"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver.py",第515行,在Dispatch base_env_dict中= base_env_dict)文件"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver.py",第2382行,在Dispatch self._module_dict中)文件" /应用/ GoogleAppEngi neLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver.py",第2292行,在ExecuteCGI中reset_modules = exec_script(handler_path,cgi_path,hook)文件"/ Applications /GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver.py",第2188行,在script_module中的ExecuteOrImportScript exec module_code中.dict 文件"/Users/tyler/Dropbox/sites/dietgrid/code2.py",第4行,在@route('/')NameError:名称'route'未定义
所以我认为它应该能够以其他方式工作或者不工作是错误的吗?
在您的代码中,您有两种不同的方法从瓶包调用方法.
route('/hello')
Run Code Online (Sandbox Code Playgroud)
和
bottle.default_app()
Run Code Online (Sandbox Code Playgroud)
第一次通话要求from bottle import route或from bottle import *第二次要求import bottle.
from foo import bar允许您bar在代码中使用方法或参数,而无需在每次调用时指定包.
关于为什么
from bottle import *
Run Code Online (Sandbox Code Playgroud)
没有办法:当你这样导入时,只导入瓶子_____all_____列表中指定的名称.因此,如果路由不存在,则必须明确指定导入:
from bottle import route
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2286 次 |
| 最近记录: |