Como enviar emails con rails parte 1

Posted by mauro on Dec 15, 2008 in Rails |

Enviar email hoy en dia desde tu aplicacion web es muy util, para validar usuarios, notificaciones, boletines, etc..
En este articulo veremos en unos simples pasos como lo podemos hacer con rails

Revision

  1. script/generate mailer notify
  2. Crear modelo  (models/notify.rb)
  3. Crear tu template para el email (views/notify/)
  4. Enviar tu mensaje
  5. Tener instalado postfix o sendmail

#Generar el modelo mailer

$ script/generate mailer notify

#Crear el metodo en el modelo mailer que enviara el email(models/notify.rb)

def send_friend(option)
      @recipients   = option[:emailamigo]
      @from         = "no-reply@upitiaya.com"
      headers         "Reply-to" => "#{option[:email]}"
      @subject      = "Te recomendaron un enlace"
      @sent_on      = Time.now
      @content_type = "text/html"
 
      body[:nombre]  = option[:nombre]
      body[:nombreamigo]  = option[:nombreamigo]
      body[:mensaje]  = option[:mensaje]
      body[:pagina]  = option[:pagina]
 
  end

Crear la vista del metodo (views/notify/send_friend.html.erb)

#las variables  como body[:pagina] definida en el metodo send_friend se acceden como @pagina desde la vista
 
<p>Hola @nombreamigo, tu amigo <i><%= @nombre %></i>. te recomendo el siguiente link </p>
 
<a href="#{@pagina}">"#{@pagina}"</a>
<br/>
<p>"#{@mensaje}"</p>

#Ahora armamos la accion en el controlador

def send_friend
  Notify.deliver_send_friend(params[:email])
end

Si tenemos postfix instalado localmente, deberia funcionar sin problema, cualquier duda deja tu comentario!
En la parte ll de este articulo veremos como enviar un email usando una cuenta de gmail.

Reply

Copyright © 2010 Chebyte’s Blog All rights reserved.