Rails和HAML:Mailto链接图片

时间:2013-10-07 22:13:41

标签: ruby-on-rails haml mailto

我正在尝试创建一个mailto链接,其中包括单击图片并将文本文件中的一些原始内容包含在邮件正文中。

以下不起作用(haml)。

= mail_to "friend@example.com" do
  %img{:src=>"#{asset_path 'mail.png'}"}      

我甚至不知道如何在那里预装身体。我知道有一个:body声明,但在这种情况下它的用法使我无法接受。

思想?

1 个答案:

答案 0 :(得分:5)

mail_to助手似乎只接受block in Rails 4,而不是previous versions。如果你使用Rails 3并且无法升级,你可以这样做:

- mail_link_content = capture_haml do
  %img{:src=>asset_path('mail.png')} 

=mail_to "friend@example.com", mail_link_content

请注意,如果内容都是内插的,则不需要使用字符串(您可能需要添加括号)。

要获取正文内容,您只需要使用mail_to键将选项哈希作为:body的最后一个参数传递:

Rails 4:

= mail_to "friend@example.com", :body => "Body text here" do
  %img{:src=>asset_path('mail.png')} 

Rails 3:

=mail_to "friend@example.com", mail_link_content, :body => "Body text here"