2013-07-15 3 views
1

Насколько я понимаю, браузер делает HTTP-запрос к приложению bin/app.py и запрашивает/URL-адрес, который обычно является первым URL-адресом на любом веб-сайте.web.py загружает страницу, даже когда класс переименован

Внутри bin/app.py У меня есть список URL-адресов и их классы.

Единственные, что у меня есть, это сопоставления '/' и 'index'. Это дано в Learn Python жесткий путь что:

Это означает, что всякий раз, когда кто-то идет к/с браузером, lpthw.web будет найти индекс класса и загрузить его для обработки запроса.

У меня есть следующий код в app.py прямо сейчас.

import web 
urls = ('/','index') 
app = web.application(urls,globals()) 

class whatever: 
    def GET(self): 
     a = "Hello World!" 
     return a 
if __name__ == "__main__": 
app.run() 

В приведенном выше коде я назвал класс «независимо». Даже тогда, когда я перехожу на страницу localhost, в браузере отображается «Hello World!».

Почему это происходит? Даже если я переименую один из URL-адресов из «индекса» на что-то еще, код работает. Что мне не хватает?

+1

Вы перезапустили сервер? ? Кроме того, вы уверены, что редактируете нужный файл? – Blender

+0

У меня app.py открыто в одном окне (IDLE) и командной строке, откуда я выполнил код в другом. Нужно ли, чтобы я перезапускал сервер каждый раз, когда меняю класс? @Blender – sarath

+0

Удалите все файлы .pyc, если они есть ... –

ответ

1

По умолчанию сервер необходимо перезапустить после каждого изменения кода. Однако есть обходной путь. От the web.py tutorial:

... На последней строке добавить web.reloader так, что он читает:

if __name__ == "__main__": web.run(urls, globals(), web.reloader)

Это говорит web.py использовать web.reloader "промежуточного" (промежуточное программное обеспечение это функция-обертка для добавления некоторых функций на ваш веб-сервер), который перезагружает ваши файлы всякий раз, когда вы их редактируете, чтобы сразу увидеть изменения в веб-браузере. (Для некоторых серьезных изменений вам все равно придется перезагружать сервер.) Вероятно, вы захотите это сделать, когда вы сделаете свой сайт общедоступным, но это здорово при разработке.

Смежные вопросы