我在production.rb环境文件中添加了以下内容。image_url在action mailer(Ruby on rails)中不工作
config.action_mailer.default_url_options = {host: "domain.com"}
笔者认为:
<%= tag("img", src: image_url("logo.png")) %>
但是,当我看着我的电子邮件中的路径,我看到一个IMAGE_PATH,而不是URL。
我在做什么错?
我在production.rb环境文件中添加了以下内容。image_url在action mailer(Ruby on rails)中不工作
config.action_mailer.default_url_options = {host: "domain.com"}
<%= tag("img", src: image_url("logo.png")) %>
但是,当我看着我的电子邮件中的路径,我看到一个IMAGE_PATH,而不是URL。
我在做什么错?
这是它在我的应用程序中的工作原理。尝试这种
<%= image_tag(attachments['logo.png'].url, style: 'margin: 5px') %>
尝试使用asset_path
而非生产电子邮件视图中的image_url
。
您需要在production.rb中指定config.action_mailer.asset_host = "domain.com"
。然后在邮件视图中使用image_tag
。
需与此添加到所述邮件收发器:attachments.inline [ 'logo.png'] = File.read(Rails.root.join( '应用程序/资产/图像/ logo.png')) ,那么你的代码工作。感谢领先! – user2012677
附件['logo.png'] =动态网址的File.read(data.logo.current_path)。我假设你正在这样做。如果我的回答有帮助,请接受答案。 –