2012-06-14 40 views
10

我試圖做一個簡單的表單,但它的工作不太好。 這是我目前的形式代碼:Rails/Haml:如何創建帖子表單?

%form{ :controller => 'tool', :action => 'activation', :method => 'post' } 
    %table{ :border => 0, :width => "100%", :height => "100%" } 
    %tr{ :align => "center", :valign => "center" } 
     %td 
     %input{ :type => "text", :name => "accountName" } 
     %input{ :type => "submit", :name => "submit", :value => "login" } 

嘗試通過的形式來發送數據時,我得到這個網址:10.0.0.2:3000/activation。 我知道我可以讓路線tool#activation激活,但這是一種錯誤的方式,我想發送郵政查詢到10.0.0.2:3000/tool/activation,但:action => 'tool/activation'也是一個糟糕的方式據我所知。

你能給我建議嗎?

回答

18

你應該使用rails helper標籤。

= form_tag tool_activation_path, :method => :post do 
    # The table 
     # The row 
      # The data 
       = text_field_tag "accountName", "" 
       = submit_tag "Submit" 

查看更多在這裏:http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html

此外,你應該儘量避免不必要的表樣式佈局。相反,看看使用CSS。

+0

太棒了! Big ThanX! – alterpub

+0

不客氣!一定要接受答案,以便任何其他有類似問題的人都知道什麼對你有用。 – MrDanA