在建立金字塔的應用程序,並添加設置的配置,我在瞭解如何從請求訪問信息,像的request.session和這些問題。我在使用金字塔時是全新的,我已經在整個地方搜索了這方面的信息,但什麼都沒找到。訪問從__init__.py請求金字塔
我想做什麼就生產發出異常電子郵件時,在請求對象的訪問信息。我無法訪問請求對象,因爲在創建應用程序時,它在__init__.py
文件中不是全局的。這是我現在得到:
import logging
import logging.handlers
from logging import Formatter
config.include('pyramid_exclog')
logger = logging.getLogger()
gm = logging.handlers.SMTPHandler(('localhost', 25), '[email protected]', ['[email protected]'], 'Error')
gm.setLevel(logging.ERROR)
logger.addHandler(gm)
這工作得很好,但我想包括約發出異常電子郵件時登錄的用戶,存儲在會話信息。如何從__init__.py
訪問該信息?
從你的代碼我不明白你會如何期望異常電子郵件生成。如果您計劃在發生異常時發送電子郵件,則應查看自定義異常視圖。 http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/views.html?awesome#custom-exception-views它是一個視圖,所以你當時會有當前的請求,你可能想要在那裏發送電子郵件,然後生成錯誤響應。 – 2012-07-09 16:04:37
也許你可以創建一個監聽NewRequest http://www.kemeneur的事件訂閱者。COM /客戶/掛架/文檔/金字塔/ NARR/events.html#事件章? – dm03514 2012-07-09 16:05:34
@TomWillis我正在使用pyramid_exclog(http://docs.pylonsproject.org/projects/pyramid_exclog/en/latest/)來處理日誌記錄,所以通過在日誌處理程序中添加一個SMTPHandler,這是一種方便的方式日誌代碼在一個地方。異常電子郵件生成,工作正常,這不是我遇到的問題:) – 2012-07-09 16:35:31