Python Google应用程序引擎:从yaml文件调用特定方法?
我不熟悉使用Google App Engine进行数据库编程,现在正在使用Python进行编程。我想知道是否允许我有一个Python文件和几个请求处理程序类,每个类都有get和post方法。我知道yaml文件允许我指定使用特定URL运行哪些脚本,如下例所示:Python Google应用程序引擎:从yaml文件调用特定方法?,python,google-app-engine,yaml,Python,Google App Engine,Yaml,我不熟悉使用Google App Engine进行数据库编程,现在正在使用Python进行编程。我想知道是否允许我有一个Python文件和几个请求处理程序类,每个类都有get和post方法。我知道yaml文件允许我指定使用特定URL运行哪些脚本,如下例所示: handlers: - url: /.* script: helloworld.py 如何告诉它运行.py文件中某个类中的特定方法?这是可能的/允许的吗?我是否需要将不同的请求处理程序类分离到不同的python文件中?目前我对数据库的
handlers:
- url: /.*
script: helloworld.py
如何告诉它运行.py文件中某个类中的特定方法?这是可能的/允许的吗?我是否需要将不同的请求处理程序类分离到不同的python文件中?目前我对数据库的理解相当肤浅,所以我可能没有任何意义
谢谢
我想知道是否允许我这样做
有一个Python文件和几个Python文件
请求处理程序类,每个类
有get和post方法
当然!该app.yaml
只是将控制权转移到helloworld.py
,后者将运行该文件中定义的main
函数——该函数通常会设置一个WSGI应用程序,该应用程序根据URL适当地调度到正确的处理程序类。例如,请查看本教程早期的示例代码:
application = webapp.WSGIApplication(
[('/', MainPage),
('/sign', Guestbook)],
debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
我没有复制import
语句和类定义,因为它们无关紧要:这是单个.py
文件如何分派到各种处理程序类的示例(本例中有两个)
当然,这并不意味着yaml文件允许您调用任何方法:相反,它将控制权交给
.py
文件,该文件的main
负责接下来的所有操作(例如,对于App Engine附带的webapp
迷你框架,它将始终是get
或post
方法[[或者,put
,delete
,…,等等,如果您也支持它们的话——除非它们是特别RESTful的;-)]根据传入请求中的确切HTTP方法和URL进行调用。感谢您提供的全面而有用的答案!我想我正在慢慢掌握数据库和所有内容。非常有趣的东西:)顺便问一下,debug=True有什么用?@Ayanonagon,不客气!debug=True
表示显示exc的回溯访问浏览器上的默认值(如果有),否则默认情况下只给出一个非常不透明的“内部服务器错误”(HTTP状态500)。啊哈,这是有道理的。再次感谢!