我试图覆盖设计以便发送邮件以激活用户。在注册 Controller 中的create方法中,我有这个

urlEmail = resource.email.sub('@','-')
Pony.mail(
    :to => resource.email,
    :from => "[email protected]",
    :subject => "Confirm Account",
    :headers => { 'Content-Type' => 'text/html' },
    :body => ("<h1>Welcome To My Awesome Site</h1>
              <p>follow this link to create your account</p>
              <p>http://localhost:3000/confirm-me/stuff?=" + resource.confirmhash.to_s + "/" + urlEmail.to_s  + "</p>") )

该URL导致激活用户的方法。这不是确定帐户的好方法。问题是当Pony.mail(...)运行时出现此错误
uninitialized constant RegistrationsController::Pony

我已经安装了pony,并且Pony.mail在控制台中工作。我也尝试在 Controller 文件的顶部使用require'pony',但是我得到了
no such file to load -- pony

我需要做些什么才能使这项工作。

最佳答案

看起来像捆绑器的问题。您是否在与 Controller 测试相同的RAILS_ENV中运行控制台?

尝试将pony.rb复制到您的lib中(从https://github.com/benprew/pony),并将其要求放在 Controller 文件的顶部。从您的Gemfile中删除gem "pony"bundle install。做个测试。

如果有帮助,请返回捆绑程序,删除Gemfile.lock并运行bundle install

如果仍然有此问题,请在此处添加您的Gemfile。

关于ruby-on-rails - Rails设计邮件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8244040/

10-09 03:18