我正在使用设计,我希望能够在开发模式时跳过确认电子邮件。由于我的应用程序无法在本地计算机上运行时发送电子邮件,因此我只会收到警报消息,说您需要在访问应用程序之前确认。使用devise在开发中跳过确认电子邮件
回答
设计使用ActionMailer发送电子邮件。在测试模式下,ActionMailer实际上不应该发送任何电子邮件。
查看this tutorial了解ActionMailer和测试环境的说明。
因此,根据环境,您可以基本关闭交货,而不会影响您的实际测试。您只需在environments/test.rb
文件中指定该选项。
我在测试文件中看到它具有以下代码:#告诉Action Mailer不要将电子邮件发送到现实世界。 #测试传递方法将发送的电子邮件累积到 #ActionMailer :: Base.deliveries数组中。 config.action_mailer.delivery_method =:test我应该只是将该代码片段复制到config/environments/development.rb文件中 – tomciopp
嗯即使我关闭了交付但我仍然不需要一种方法来满足可确认的模块,因为我仍然会得到我需要确认的相同错误。 – tomciopp
如果您的意思是,只要考虑测试,就可以满足它的一种方法,那么我只会使用模拟对象来伪造确认,或者仅从数据库提供确认代码,因为实际邮件的传递不是'在测试中什么是重要的。重要的是确认机制的作用,对吗?也就是说,当通过确认URL显示正确的确认码时,您想知道某些“已确认”标志在数据库中翻转了吗? – jefflunt
在Rails 3中,您可以使用“拦截器”重新路由您的开发电子邮件,如Railscast 206中所述。
设计也有一个方法skip_confirmation!,您可以在保存它之前调用模型以避免发送邮件。它只是设置confirmed_at
属性,这会导致跳过邮件发送。
或者您可以在您的开发环境中尝试MailCatcher。
以您的模型为设计。通常它的user.rb.并删除或注释配置comfirmable。 这将防止确认的过程
那样简单说
user=User.new
user.email="[email protected]"
user.password="yourPassword"
user.skip_confirmation!
user.save
就像一个小小的FYI,你可以把所有这些放在一个块中:'user = User.new {| u | u.email ='[email protected]'; u.password ='yourPassword'; u.skip_confirmation! } .save'。积木很有趣! – wulftone
如果你想有一个真正的轻量的方式来做到这一点,看看在你的终端注册后 - 轨输出显示了电子邮件发送后,您可以复制粘贴确认链接,确认帐户,然后继续测试。
原油,但有效。
- 1. 如何跳过使用Devise的用户的电子邮件确认rpx conecteable
- 2. Get Devise 1.3.4在开发中使用Gmail发送电子邮件
- 3. 发送注册确认电子邮件,必须使用Devise确认
- 4. 如何让Devise在Heroku上发送确认电子邮件?
- 5. 如何在Devise中跳过validates_presence_of电子邮件
- 6. 在Devise中跳过电子邮件验证
- 7. 确认电子邮件从devise on rails3使用Gmail不到达
- 8. 我如何定制Devise的“重发确认电子邮件”
- 9. 如何跳过用户确认使用电子邮件omniauth(社会认证)
- 10. Rails Devise,如何跳过确认邮件但仍生成确认标记?
- 11. 防止Devise/ActionMailer发送确认邮件
- 12. 确认电子邮件不发送
- 13. 发送电子邮件确认SWFUpload
- 14. Drupal不发送确认电子邮件
- 15. Infusionsoft API触发确认电子邮件
- 16. 通过电子邮件预约确认
- 17. LimeSurvey电子邮件确认
- 18. 确认电子邮件
- 19. 电子邮件确认Firebase
- 20. 电子邮件确认asp.net
- 21. 电子邮件确认
- 22. 电子邮件确认jquery
- 23. 发送PHP确认电子邮件管理员电子邮件发送
- 24. 更改Django中的电子邮件时发送确认电子邮件
- 25. 停止PHP的电子邮件确认的发件人的电子邮件ID
- 26. 如何使用cPanel电子邮件帐户在laravel中发送确认电子邮件?
- 27. 通过prototype.js发送电子邮件确认?
- 28. 在Devise中使用电子邮件+密码找到用户
- 29. Struts2库用于确认电子邮件
- 30. Cakephp&用户电子邮件确认
或[letter_opener_web](https://github.com/fgrehm/letter_opener_web)进行登台 –
不确定这里的提问者,但我个人正在用大量数据填充一个大型应用程序。我刚在浏览器中打开了600多个标签,因为我确实使用了开信刀。我同意在大多数情况下,你不想跳过,在这种情况下,我确定。需要跳过。 – Sean