Nic*_*ick 3 ruby email ruby-on-rails actionmailer
我们希望在登台服务器上测试电子邮件功能,但我们不希望不小心给客户发送电子邮件.
所以,我希望发送电子邮件到"anything@corporation.com"工作,但发送到"anything@customer.com"的电子邮件被禁止.
我可以进入我的所有控制器并输入代码,只有当电子邮件包含我们的域或环境是prod时才触发"传递"方法.但是,这看起来有点像kludgey.我想广泛应用.
使用Mail gem的应用程序(包括rails> = 3.0项目)可以使用safety_mailer gem.指定允许发送的电子邮件中的域(或域集或魔术字),并以静默方式删除发送给所有其他域的电子邮件.
https://github.com/cluesque/safety_mailer
将gem添加到您的Gemfile中,指定要包含它的组(可能不是生产).
gem "safety_mailer", :group => :development
Run Code Online (Sandbox Code Playgroud)
不要忘记捆绑安装来安装
在您的环境文件config/environments/development.rb中配置它,以及一些正则表达式.
config.action_mailer.delivery_method = :safety_mailer
SafetyMailer::Config.allowed_matchers = [ /mydomain.com/, /mytestacct@gmail.com/, /super_secret_test/ ]
Run Code Online (Sandbox Code Playgroud)
...现在,发送电子邮件至anyone@mydomain.com,mytestacct @ gmail.com,bob + super_secret_test @ yahoo.com全部收到并发送电子邮件给其他收件人(例如您复制到测试服务器的生产数据库中的真实用户) )被压制了.
| 归档时间: |
|
| 查看次数: |
922 次 |
| 最近记录: |