Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 6, 2014 19:28:04

rip
От:
Зарегистрирован: 2011-11-02
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Почему не работает regexp в handlers - tornado.web.Application

Hi All!

В проекте понадобилось переопределить favicon.ico и я столкнулся с очень странной ситуацией, может кто с гуру подскажет, в чем я ошибаюсь.

Есть хрестоматийный код:

dirname = os.path.dirname(__file__)
STATIC_PATH = os.path.join(dirname, 'static')
TEMPLATE_PATH = os.path.join(dirname, 'templates')
FAVICON_PATH = os.path.join(dirname,'favicon.ico')
handlers = [
		        (r'/favicon.ico', tornado.web.StaticFileHandler,{'path' : settings.FAVICON_PATH}),
			(r"/", MainHandler),
		]
		set_params = dict(
		        template_path = settings.TEMPLATE_PATH,
		        static_path = settings.STATIC_PATH,
			debug=True,
			autoescape=None
		)
		
		tornado.web.Application.__init__(self, handlers, **set_params)

На выходе:

[W 140806 18:28:04 web:1812] 404 GET /favicon.ico (127.0.0.1) 4.65ms

т.е. favicon.ico мы не находим.
Ок, похоже не отработался regexp, так как ‘.’ является служебным символом.

		handlers = [
		        (r'/(favicon\.ico)', tornado.web.StaticFileHandler,{'path' : settings.FAVICON_PATH}),
			(r"/", MainHandler),
		]
А вот на выходе еще интереснее:

Вот вот что содержит том случае handlers

('/(favicon\\.ico)', <class 'tornado.web.StaticFileHandler'>, {'path': '/home/rip/work/py-test/favicon.ico'})

Вопрос, что я делаю не так, в случае с заданием regexp для uri?



Отредактировано rip (Авг. 7, 2014 11:44:39)

Офлайн

#3 Авг. 7, 2014 11:45:08

rip
От:
Зарегистрирован: 2011-11-02
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Почему не работает regexp в handlers - tornado.web.Application

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version