2011-07-17 40 views
0

我正在联系我们的形式,没有任何模型。当人们点击联系我们时,我只想让它成为主页中的弹出窗口。导轨:没有路线匹配,创建联系我们形式

在部分我们加载_contact.html.haml,这是我们所拥有的

<div class="contact-us-form"> 

    <h>Contact Us</h> 
    <% form_tag(:controller => "application", :action => "deliver_contact_form", :method=>'post') do %> 
    <p> 
     <%= label_tag(:contact_email, "Your Email") %> 
    </p> 
    <p> 
     <%= text_field_tag(:contact_email) %> 
    </p> 
    <p> 
     <%= label_tag(:contact_detail, "Details") %> 
    </p> 
    <p> 
     <%= text_area_tag(:contact_detail,:"", :size=> "44x6") %> 
    </p> 
    <p> 
     <%= submit_tag("Submit") %> 
    </p> 
    <% end %> 
    <div id="contact_cancel"><%= link_to "Cancel", "javascript:void()"%></div> 
</div> 

,我们定义的操作deliver_contact_form,因为这在application_controller.rb

def deliver_contact_form 
    ContactMailer.welcome_email(params).deliver  
    respond_to do |format|   
     format.html { redirect_to comments_path } 
    end 
    end 

当我跑得主页(localhost:3000)我得到

No route matches {:controller=>"application", :action=>"deliver_contact_form", :method=>"post", :locale=>:en} 

我想知道我需要做什么?

感谢, 米娜

+1

你的routes.rb文件是什么样的? –

+1

我没有任何与我的routes.rb有关的东西,这就是为什么发布这:) – Matilda

回答

0

你需要在你的routes.rb定义路线

我也建议创建一个新的控制器,即使是这样一个小小的动作,反正:

match '/deliver_contact_form' => 'application#deliver_contact_form', :via => :post 

<% form_tag(deliver_contact_form_path, :method => 'post') do