Miguel Angel Calleja Lázaro
escribió:
attachment :content_type => "image/jpeg",
Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es
Detallo lo que he hecho, en mi controlador recojo lo que me llega del
formulario, subo el fichero al servidor y llamo a mi TrabajaMailer:
def enviar_trabaja
size=params[‘file_data’].size
tipo=params[:file_data].content_type
nombre=params[:file_data].original_filename
contenido=params[:file_data].read
dir=“/…/public/”
if size>0
dest=File.join(dir,sanitize_filename(nombre))
File.open(dest.untaint, ‘wb’) { |f| f <<
contenido }
#Borramos el fichero temporal si fue creado
local_temp_file=params[:file_data].local_path()
File.unlink(local_temp_file) if local_temp_file
end
contact=params[:trabaja] #Lo que llega del formulario
email=TrabajaMailer.create_sent(contact,tipo,nombre,dest)
email.set_content_type("text/html")
if TrabajaMailer.deliver(email)
flash[:notice]="El formulario ha sido enviado con
éxito, nos pondremos en contacto con usted en el menor tiempo posible."
else
flash[:notice]=“El formulario no se ha podido enviar”
end
@pagina=Pagina.find(15)
redirect_to :action=>‘ver’, :permalink=>@pagina.permalink
end
Y mi TrabajaMailer, donde recojo el content_type, leo el fichero y el
nombre, aparte me tiene que sacar los datos en la vista:
def sent(contacto,tipo,nombre,dest)
@subject = 'Trabaja con nosotros ’
@body[“contacto”] = contacto
@recipients = ‘[email protected]’
@from = ‘[email protected]’
@sent_on = Time.now
@headers = {}
attachment :content_type => tipo,
:body => File.read(dest),
:filename => nombre
end
Y mi vista, donde muestro los datos:
Nombre y apellidos: <%= @contacto[:apellidos]%>,
<%=@contacto[:nombre]%>
Departamento: <%= @contacto[:departamento]%>
Teléfono: <%= @contacto[:telefono] %>
Email: <%= @contacto[:email] %>
Comentarios: <%= @contacto[:comentarios] %>
Se sube el fichero al servidor, me envía el mail pero no me llega
correctamente, no me llega la vista ahora y al correo me viene algo
horroroso de ver:
–mimepart_46f8eb039bf64_6222…fdbfa33a4172e Content-Type: image/jpeg;
name=alimentaciondetail.jpg Content-Transfer-Encoding: Base64
Content-Disposition: attachment; filename=alimentaciondetail.jpg
/9j/4AAQSkZJRgABAAEAYABgAAD//gAfTEVBRCBUZWNobm9sb2dpZXMgSW5j
LiBWMS4wMQD/2wCEAAgFBgcGBQgHBgcJCAgJDBQNDAsLDBgREg4UHRkeHhwZ
HBsgJC4nICIrIhscKDYoKy8xMzQzHyY4PDgyPC4yMzEBCAkJDAoMFw0NFzEh
… --mimepart_46f8eb039bf64_6222…fdbfa33a4172e–
Adjunto el log:
Processing PaginasController#enviar_trabaja (for xx.xx.xx.xx at
2007-09-25 07:03:31) [POST]
Session ID: 8e9752718bda6cd6c403095f40fe7de9
Parameters: {“action”=>“enviar_trabaja”,
“file_data”=>#<File:/tmp/CGI25122.6>, “controller”=>“paginas”,
“trabaja”=>{“comentarios”=>“”, “nombre”=>“h”,
“departamento”=>“Departamento 3”, “telefono”=>“a”, “email”=>“[email protected]”,
“apellidos”=>“a”}}
^[[4;36;1mPagina Load (0.000265)^[[0m ^[[0;1mSELECT * FROM paginas
WHERE (padre_id=21) ORDER BY orden ^[[0m
^[[4;35;1mPagina Columns (0.000284)^[[0m ^[[0mSHOW FIELDS FROM
paginas^[[0m
^[[4;36;1mPagina Load (0.000205)^[[0m ^[[0;1mSELECT * FROM paginas
WHERE (padre_id=21) ORDER BY orden ^[[0m
^[[4;35;1mPagina Load (0.000236)^[[0m ^[[0mSELECT * FROM paginas
WHERE (padre_id=1) ORDER BY orden ^[[0m
^[[4;36;1mPagina Load (0.000226)^[[0m ^[[0;1mSELECT * FROM paginas
WHERE (padre_id=2) ORDER BY orden ^[[0m
^[[4;35;1mPagina Load (0.000176)^[[0m ^[[0mSELECT * FROM paginas
WHERE (padre_id=3) ORDER BY orden ^[[0m
^[[4;36;1mPagina Load (0.000198)^[[0m ^[[0;1mSELECT * FROM paginas
WHERE (padre_id=0) ORDER BY id ^[[0m
Sent mail:
Date: Tue, 25 Sep 2007 07:03:31 -0400^M
From: [email protected]^M
To: [email protected]^M
Subject: Trabaja con nosotros desde Somosierra.com^M
Mime-Version: 1.0^M
Content-Type: text/html;
boundary=mimepart_46f8eb0399939_6222…fdbfa33a4158b^M
^M
^M
–mimepart_46f8eb0399939_6222…fdbfa33a4158b^M
Content-Type: image/jpeg; name=alimentaciondetail.jpg^M
Content-Transfer-Encoding: Base64^M
Content-Disposition: attachment; filename=alimentaciondetail.jpg^M
^M
/9j/4AAQSkZJRgABAAEAYABgAAD//gAfTEVBRCBUZWNobm9sb2dpZXMgSW5j
LiBWMS4wMQD/2wCEAAgFBgcGBQgHBgcJCAgJDBQNDAsLDBgREg4UHRkeHhwZ
HBsgJC4nICIrIhscKDYoKy8xMzQzHyY4PDgyPC4yMzEBCAkJDAoMFw0NFzEh
HCExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
…
/9k=
–mimepart_46f8eb0399939_6222…fdbfa33a4158b–^M
Algo estoy haciendo mal, el mail no me llega correctamente con el
attachment, alguien puede ayudarme? gracias