0

私はpythonとweb.pyの両方の世界に精通しています。

3つのファイルを作成しました

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で開発サーバーを起動し、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.1GET/favicon.ico"-404が見つかりません

私は何が欠けていますか?

4

1 に答える 1

1

web.pyはコントローラークラスを見つけることができません。urls.pyを変更する必要があります。

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

またはindexwebstart.pyにクラスをインポートします

from index import index

つまり、URLを直接マップするかmodule_name.class_name、グローバルスコープで使用できるimport class_name from module_nameようにする必要があります。class_name

于 2013-03-19T20:33:40.570 に答える