web.py没有检测到GET方法

时间:2013-03-19 15:36:13

标签: python web.py

我是python和web.py世界的菜鸟。

我刚创建了三个文件

urls.py

url_mappings = (
    '/', 'index'
)

index.py

class index:
    def GET(self):
        return "<h1>Hello World</h1>"

    def POST (self):
        return "<h1>Hello World in POST</h1>"

webstart.py

import web
import index
from urls import url_mappings

if __name__ == "__main__":
    app = web.application (url_mappings, globals())
    app.run()

我用python webstart.py启动我的dev服务器,当我点击localhost:8080时,它向浏览器发送None,在日志中我看到以下内容

127.0.0.1:52822 - - [19 / Mar / 2013 20:44:18]“HTTP / 1.1 GET /” - 405方法不允许 127.0.0.1:52822 - [19 / Mar / 2013 20:44:18]“HTTP / 1.1 GET /favicon.ico” - 404 Not Found

我错过了什么?

1 个答案:

答案 0 :(得分:1)

web.py无法找到控制器类,您应该更改urls.py:

url_mappings = (
    '/', 'index.index'
)

或在webstart.py中导入index

from index import index

即。您应该将网址直接映射到module_name.class_nameimport class_name from module_name,以便class_name在全球范围内可用。