Adjuntar documento a un formulario de contacto en Rails 3.2
Frecuentes
Visto 1,204 veces
1
He creado un formulario de contacto que me enviará un correo electrónico una vez enviado. Ahora necesito poder tener la opción de adjuntar un documento que también se me enviará por correo electrónico. No necesito guardarlo en una base de datos, ya que estará con el correo electrónico y se descargará desde allí.
Soy nuevo en Rails, así que me gustaría ver qué han hecho otras personas en esta situación, he leído un poco y veo que necesitaré el clip de gemas en la mayoría de los casos. También he mirado jquery/paperclip en github pero esto parece mucho trabajo por lo que espero que sea un pequeño trabajo. Podría estar equivocado aquí, así que disculpas si lo estoy
Cualquier ayuda muy apreciada
1 Respuestas
2
Lo que tendría que hacer es usar la gema carrierwave o la gema paperclip para cargar el archivo en una carpeta específica en su directorio público. Haría esto usando ajax que le permitirá cargar el archivo instantáneamente una vez que seleccione el archivo para enviar. Esto le permitiría cargar el archivo adjunto y tener la ruta del archivo conocida y lista, de modo que cuando haga clic en enviar, se ejecutará el siguiente código que le permitirá enviar el archivo. También puede agregar una línea de código para eliminar el archivo después de que se haya enviado correctamente si no desea acumular archivos en su servidor. Puede encontrar más documentación aquí.. http://guides.rubyonrails.org/action_mailer_basics.html#sending-emails-with-attachments
class ApplicationMailer < ActionMailer::Base
def welcome(recipient)
attachments['free_book.pdf'] = File.read('path/to/file.pdf')
mail(:to => recipient, :subject => "New account information")
end
end
contestado el 23 de mayo de 12 a las 15:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas ruby-on-rails-3 email-attachments or haz tu propia pregunta.