2013-10-07 4 views
1

Я пытаюсь создать ссылку mailto, которая включает в себя щелчок изображения и включение некоторого исходного содержимого из текстового файла в тело сообщения.Rails и HAML: ссылка Mailto с изображением

Следующие не работают (haml).

= mail_to "[email protected]" do 
    %img{:src=>"#{asset_path 'mail.png'}"}  

Я даже не знаю, как бы я получил тело, предварительно загруженное там. Я знаю, что есть объявление :body, но его использование в этом контексте ускользает от меня.

Мысли?

ответ

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 "[email protected]", mail_link_content 

Обратите внимание, что вам не нужно использовать строку, если содержимое всех интерполированное (возможно, потребуется добавить скобки).

Чтобы получить содержимое тела, вам просто нужно передать опции хэш в качестве последнего аргумента mail_to с ключом :body:

Rails 4:

= mail_to "[email protected]", :body => "Body text here" do 
    %img{:src=>asset_path('mail.png')} 

Rails 3:

=mail_to "[email protected]", mail_link_content, :body => "Body text here" 
Смежные вопросы