Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отправка html-сообщения через e-mail 
:(
    Опции темы
ilnursoft
Дата 5.6.2012, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 5.6.2012

Репутация: нет
Всего: нет



Добрый день!

не могу никак сделать следующее: необходимо послать сообщение по электронке у которого тело письма html со встроеными изображениями.

вот код:
Код

require 'mail'
require 'base64'

Mail.defaults do
  delivery_method :smtp, { :address   => "smtp.mi.ru",
                           :port      => 587,
                           :domain    => "HELO",
                           :user_name => "myu",
                           :password  => "qwerty",
                           :authentication => 'plain',
                           :enable_starttls_auto => true }
end

fn = 'img1.jpg'
src="cid:#{fn}"
new_tag = "<img src='#{src}'>"
puts new_tag
my_mail = Mail.deliver do
  to      '[email protected]'
  from    '[email protected]'
  subject 'Test mail using ruby gem mail '

  add_file(:filename => 'img1.jpg', :content => (File.open('img1.jpg', 'rb') { |f| f.read }))

  html_part do
    content_type 'text/html; charset=UTF-8'
    body "<h1>This is HTML</h1> #{new_tag}  <h1>END This is HTML</h1> "
  end 

end


как я понимаю в html письме должна ссылка на изображение вида <img src="cid:внутренняя_ссылка_на_рисунок">

как определить и связать "внутренняя_ссылка_на_рисунок" с изображением.
PM MAIL   Вверх
source777
Дата 6.6.2012, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Как вариант:
Код

mail.attachments.first.content_id


P.S. Я бы посоветовал не использовать блок deliver в нетривиальных случаях. Сделайте обычными методами mail = Mail.new.., mail.add_file..., ..., mail.deliver
Так и читабельнее получится и проще для отладки в случае чего.


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Ruby: Общие вопросы"
source777
  • С чего начать? начинаем
  • Ссылки на полезные ресурсы смотрим тут
  • Обязательно следуйте правилам Vingrad.
  • Пожалуйста, прочитайте рекомендации по работе в форуме и навигации по Vingrad.
  • Для вставки кодов Ruby используйте тег: [code=ruby]код[/code]. Когда в будущем подсветка синтаксиса для Ruby будет реализована, весь исходных код преобразится.
  • Используйтe чекбокс "Транслит" (возле кнопок кодов), если у Вас нет русских шрифтов.
  • Помните, для каждого вопроса должна быть своя тема.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, source777.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Ruby: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1006 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.