我想向用户发送一封电子邮件,其中包含在我的公共文件夹中下载PDF文件的链接。如何在ActionMailer视图中创建链接?我需要一个适用于我的测试,开发和生产环境的解决方案(因此,没有硬编码链接)。
答案 0 :(得分:1)
如果您已经在普通视图中使用了路径,那么您只需将_path替换为_url即可。
如果您要构建自定义链接,只需在字符串中使用root_url
变量即可打印出来:http://yourhost.com/
例如,对于HTML电子邮件,假设filename
变量
<%= link_to 'Download PDF', "#{root_url}#{filename}" %>
用于发送短信:
<%= "#{root_url}#{filename}" %>
确保为config / environments / ENV.rb中的每个环境设置正确的主机名,因为这是_url从其获取主机名的地方
例如:config / environments / production.rb
config.action_mailer.default_url_options = { :host => 'yourhost.com' }