如何在Rails中的Model方法中获取url_for对象

时间:2012-01-03 00:19:42

标签: ruby-on-rails url actionmailer

我想创建一个包含Rails中对象路径的字符串。

  def notification_content   
      "#{app.listing_url(my_listing, :host => "example.com")}. " +
  end

然后,此内容将作为电子邮件内容提供给我的ActionMailer。

在控制台中,它运行正常。但是,当我在localhost服务器上运行它时,我收到以下错误:

undefined local variable or method `app'

我应该怎么做?另外,我如何使路径成为超链接?

非常感谢。

2 个答案:

答案 0 :(得分:15)

include Rails.application.routes.url_helpers
def notification_content   
  "#{listing_url(my_listing, :host => "example.com")}. " + ...
end

答案 1 :(得分:2)

(从评论中,记入Edward Anderson


在url_for前面加上

Rails.application.routes.url_helpers。 url_for(...)