write the following code in development.rb
config.action_mailer.raise_delivery_errors = false
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:tls => true,
:enable_starttls_auto => true,
:address => ''smtp.gmail.com'',
:port => 587,
:authentication => :plain,
:user_name =>
''youremail-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org'',
:password => ''password''
}
in emailer model write the following code:
class Emailer < ActionMailer::Base
def contact(recipient, subject, message, sent_at = Time.now, files=[])
@subject = subject
@recipients = recipient
@from =
''youremail-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org''
@sent_on = sent_at
@body["title"] = ''This is title''
@body["email"] =
''youremail-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org''
@body["message"] = message
@headers = {}
files.each do |file|
attachment "application/octet-stream" do |a|
a.body = file.read
a.filename = file.original_filename
end unless file.blank?
end
end
end
create one view and follow the code:
<h1>Send Email</h1>
<% form_for(:emailer, @emailer,
:url=>{:action=>''sendmail''},
:html=>{:multipart=>true}) do |f| %>
<%= f.error_messages %>
<p><label for="email_subject">Subject</label>:
<%= text_field ''email'', ''subject''
%></p>
<p><label for="email_recipient">Recipient</label>:
<%= text_field ''email'', ''recipient''
%></p>
<p><label
for="email_message">Message</label><br/>
<%= text_area ''email'', ''message''
%></p>
<p><label
for="file_upload">Upload</label><br/>
<%= file_field ''email'', ''file''
%></p>
<%= submit_tag "Send" %>
<% end %>
write the code in the controller:
class EmailerController < ApplicationController
def index
end
def sendmail
@uploaded_files = []
email = params["email"]
puts email["file"]
@uploaded_files << email["file"]
recipient = email["recipient"]
subject = email["subject"]
message = email["message"]
Emailer.deliver_contact(recipient, subject, message, @uploaded_files)
return if request.xhr?
@email = recipient
@subject = subject
@message = message
render :file => ''app\views\emailer\contact.rhtml''
end
end
--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.