【问题标题】:sending and receiving activation emails - ruby on rails tutorial by michael hartl发送和接收激活电子邮件 - michael hartl 的 ruby​​ on rails 教程
【发布时间】:2018-05-24 04:10:39
【问题描述】:

我最近开始关注 Hartl 的 Ruby on Rails tutorial

我从bitbucket 下载了现有的sample_app_reference 应用程序。

我的目标不是从头开始学习所有内容,而是为现有应用添加新功能。

问题是我无法测试我正在添加的功能,因为我无法在本地激活我的帐户。为了激活我的帐户,我需要收到一封激活电子邮件(我没有)。我已经在网上搜索了几个小时,但找不到任何关于这个问题的信息。有没有人尝试过这个教程并遇到同样的问题?任何帮助将不胜感激。

【问题讨论】:

  • 在 rails 控制台运行User.last.activate.
  • 小技术。您不需要收到电子邮件 - 您需要有链接,该链接位于电子邮件的 in 中。电子邮件可能正在写入日志(或者有其他选项可以查看出站电子邮件)。如果您想要激活用户的光荣体验,您可以从中获取 URL。或者您可以按照上面 Vasilisa 的建议进行操作。 :)
  • 非常感谢您的及时回复。

标签: ruby-on-rails ruby


【解决方案1】:

是的...从开发环境发送电子邮件通常并不简单。正如上面的 Vasilisa cmets,满足您需求的最快解决方法是从 rails 控制台激活用户......也许像这样:

% bundle exec rails console
my-app(development)> User.last.activate

但是,有时您实际上希望在邮件客户端的上下文中查看电子邮件。为此,https://mailcatcher.me/ 让事情变得超级简单。只需安装 mailcatcher gem - 不是在您应用的 Gemfile 中,而是在您本地机器的 ruby​​ 安装中。

然后,更改app/config/development.rb 中的主机和端口(不在其他环境中,如 prod!)

config.action_mailer.smtp_settings = {
  # For use with Mailcatcher: https://mailcatcher.me/
  address: '127.0.0.1',
  port: 1025
}

从命令提示符运行一次mailcatcher

然后,在您的应用中执行您的操作以触发电子邮件发送,并在您的浏览器中打开http://127.0.0.1:1080/。瞧,您看到的电子邮件就像真的发送了一样。

这是一种查看真实电子邮件的超级简单、超级有用的方法,无需设置本地环境来实际发送电子邮件。

【讨论】:

    猜你喜欢
    • 2017-06-15
    • 2016-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-24
    • 1970-01-01
    • 2016-01-16
    相关资源
    最近更新 更多