Я пытаюсь реализовать декоратор для пользовательских страниц ошибок в web2py
согласно одному из Гаити Тодос. Ref -
http://web2py.com/AlterEgo/default/show/75
Я пытаюсь сохранить его как модуль в каталоге / modules, чтобы я мог
импортируйте его в контроллеры и разместите декоратор соответствующим образом.
Я сохранил обработчик ошибок как
/modules/onerror.py
, и я импортирую его так из контроллера, скажем (or.py) -
exec('from applications.%s.modules.onerror import onerror as onerror'
% request.application)
Объект HTTP не был доступен в onerror.py, поэтому я сделал -
from gluon.http import *
Но потом я прочитал, что объект запроса также недоступен для
декоратор как в строке -
filename=os.path.join(request.folder,'views/errors/error%i.html'%status)
У меня есть некоторые сомнения -
Является ли каталог / modules хорошим местом для хранения такого повторно используемого компонента?
Модули в каталоге / modules автоматически загружаются как
новый экземпляр web2py создан? Если так, как я могу получить к ним доступ в
контроллер
Есть ли способ передать объект запроса в этот декоратор из
мой контроллер? Подсказки приветствуются.
Мой текущий onerror.py - http://paste.pocoo.org/show/186165/
То, как я пытаюсь использовать в контроллере - http://paste.pocoo.org/show/186167/
Дайте мне знать, если я делаю это неочевидным образом.