ruby-on-rails - 我将如何访问 Mailer Preview 中的 url 参数

标签 ruby-on-rails ruby-on-rails-4 actionmailer params ruby-on-rails-4.1

我有以下工作预览类:

class UserMailerPreview < ActionMailer::Preview
  def invite
    USerMailer.invite
  end
end

我正在尝试将参数传递给方法,如下所示:
localhost:3000/rails/mailers/user_mailer/invite?key1=some_value

服务器似乎收到它们:
Parameters: {"key1"=>"some_value", "path"=>"user_mailer/invite"}

但是当尝试使用哈希值访问它们时 params ,我收到一个错误。

我可以在 Preview 方法中访问这些参数吗?如果可以,如何访问?

最佳答案

我深入研究了邮件预览系统背后的代码,发现不幸的是,没有任何请求参数传递给预览类,因此预览无法访问。

相关的 Controller Action 在 railties:Rails::MailersControlller#preview .在这里,你可以看到它在调用 ActionMailer::Preview#call并只传递“电子邮件”的名称(即:预览中的适当方法)。

关于ruby-on-rails - 我将如何访问 Mailer Preview 中的 url 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25551172/

相关文章:

ruby-on-rails - Rails - 在模块上包含 Elasticsearch ?

ruby-on-rails - 无法在 Rails 3 中获取远程 ip

ruby - 有很多通过,堆栈级别太深?

html - 使用 textarea 但不使用输入文本的 CSS 类

ruby-on-rails - Rails ActionMailer w/Devise + Google Apps 处于开发模式

ruby-on-rails - 如何将 aria-label 属性添加到 View 中的链接?

ruby-on-rails - Rails 应用试图更新不存在的列

ruby-on-rails - 为什么在 has_many :through trigger callbacks on the join model on deletion of the association? 上没有 collection=objects

ruby-on-rails - Rails 设计自定义邮件程序

ruby-on-rails - 我在哪里放置 ActionMailer View 的辅助方法?