bhanson-DoiYfCJD+p7by3iVrkZq2A@public.gmane.org
2009-May-12  21:36 UTC
contact us form (n00b)
Im at a loss..and its something with my routes..
i have an index.html.erb that generates a partial
<% page_title("Contact Us") %>
<% content_for :banner do %>
  <%= render :partial => ''contacts/banner'' %>
<% end %>
<%= render :partial => ''contacts/form'' %>
The partial in the contacts directory _form.html.erb
<% form_tag :action => "contacts_mailer" do %>
  <div>
    <%= label :contact, :first_name, "First Name" %><br />
    <%= text_field :contact, :first_name %>
  </div>
  <div>
    <%= label :contact, :last_name, "Last Name" %><br />
    <%= text_field :contact, :last_name %>
  </div>
  <div>
    <%= label :contact, :subject, "Subject" %><br />
    <%= text_field :contact, :subject %>
  </div>
	<div>
    <%= label :contact, :body, "Message" %><br />
    <%= text_area :contact, :body, :rows => 10 %>
  </div>
  <div>
    <%= label :contact, :email, "Email Address" %><br />
    <%= text_field :contact, :email %>
  </div>
	<div>
    <%= submit_tag ''Send Request'', :class =>
"btn" %>
    <%= submit_tag ''Clear Form'', :class =>
''btn'', :type => ''reset'' %>
	</div>
<% end %>
and i have a contacts_controller with the following
class ContactsController < ApplicationController
  def index
  end
  def contacts_mailer
      ApplicationMailer.deliver_contact_mailer(params[:contact])
      flash[:notice] = "Your Message has been sent."
      redirect_to home_path
  end
end
And i have the ApplicationMailer setup according to a dozen tutorials.
the problem comes with the form action.
i have called
<% form_tag :action => "contacts_mailer" do %>
<% form_tag :controller => "contacts", :action =>
"contacts_mailer" do
%>
and in the source it shows <form method="post"
action="/contact-us">
and i do have these in the routes
  map.contact_mailer ''contact-us'', :controller =>
"contacts", :action
=> "contact_mailer"
  map.contact ''contact-us'', :controller =>
"contacts", :action =>
"index"
I im getting this error
Showing app/views/contacts/_whistle.html.erb where line #1 raised:
No route matches {:action=>"contacts_mailer"}
ive even created a contacts_mailer.html.erb but no dice.
any help would be awesome
thanks
Bob