saberma/19wu — pull request #267 by saberma (2013-02-28 14:23:12+00:00)
Title: #248 出错时自动给管理员发送异常信息邮件

加入 `exception notification` 后修正了个小问题，一并记录在这里。

原本 ActionMailer 是延迟加载的，直到加载像 [UserMailer](https://github.com/saberma/19wu/blob/master/app/mailers/user_mailer.rb#L1) 类才会加载 ActionMailer，同时将 `app.config.action_mailer` 的配置写入 ActionMailer.base 基类，具体顺序如下

1. 加载 [setup_mail.rb](https://github.com/saberma/19wu/blob/master/config/initializers/setup_mail.rb) ，配置会写入 app.config.action_mailer
2. 加载 [UserMailer](https://github.com/saberma/19wu/blob/master/app/mailers/user_mailer.rb#L1)
3. 加载 ActionMailer，将 [app.config.action_mailer](http://git.io/RkBjVA) 写入 [ActionMailer::Base.smtp_settings](http://git.io/zefGgQ)
4. 调用 `deliver` 方法以 smtp 方式发送时会使用 `ActionMailer::Base.smtp_settings`，而不是 `app.config.action_mailer` 中的 `smtp_settings`

但 `exception_notification` 的 [Notifier](http://git.io/-hooyA) 类

```
class ExceptionNotifier
class Notifier < ActionMailer::Base
...
end
end
```

会使 `action_mailer` 提前加载，`app.config.action_mailer` 的配置值无法再写入 `ActionMailer::Base.smtp_settings`，导致发送失败

#248