首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带Pylons 1.0的TurboMail 3- MailNotEnabledException

带Pylons 1.0的TurboMail 3- MailNotEnabledException
EN

Stack Overflow用户
提问于 2010-08-11 20:45:48
回答 1查看 700关注 0票数 3

我正在尝试使用Pylons 1.0设置TurboMail 3

跟随docs here

我已将此代码添加到development.ini

代码语言:javascript
运行
复制
[DEFAULT]
...
mail.on = true
mail.manager = immediate 
mail.transport = smtp 
mail.smtp.server = localhost

我的app_globals.py看起来像这样:

代码语言:javascript
运行
复制
"""The application's Globals object"""

from beaker.cache import CacheManager
from beaker.util import parse_cache_config_options

class Globals(object):

    def __init__(self, config):
        self.cache = CacheManager(**parse_cache_config_options(config))

     from turbomail.adapters import tm_pylons
     tm_pylons.start_extension()

我的控制器有这个方法:

代码语言:javascript
运行
复制
def submit(self):
    message = Message("from@example.com", "to@example.com", "Hello World")
    message.plain = "TurboMail is really easy to use."
    message.send()

问题是,当调用message.send()时,我得到了这个错误:

代码语言:javascript
运行
复制
MailNotEnabledException: An attempt was made to use a facility of the TurboMail framework but outbound mail hasn't been enabled in the config file [via mail.on]

我不知道我错过了什么?根据文档,这一切似乎都是对的!

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-12 08:18:33

Pylons 1.0对配置存储在全局对象中的方式(以及何时)进行了几个向后不兼容的更改。在这种情况下,在实例化Globals对象时不再加载配置。相反,您必须将您的代码更改为以下代码:

代码语言:javascript
运行
复制
import atexit
from turbomail import interface
from turbomail.adapters import tm_pylons
from beaker.cache import CacheManager
from beaker.util import parse_cache_config_options

class Globals(object):
    def __init__(self, config):
        self.cache = CacheManager(**parse_cache_config_options(config))

        atexit.register(tm_pylons.shutdown_extension)
        interface.start(tm_pylons.FakeConfigObj(config))

上面的代码(atexit和interface.start)正是start_extension()代码所做的事情。

我将发布一个更新的TurboMail,允许将配置作为参数传递给start_extension(),它应该会以一种更合理的方式澄清这一点。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3458344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档