2012-06-29 15 views
0

我嘗試讓從索引行動上我的數據庫一個簡單的搜索,而不是列出所有數據全部由被處理我的帖子鏈接「創造」

這是我的用戶/指數

<%= form_tag do %> 
<fieldset> 
    <div class="row"> 
     <div class="span5 offset3"> 
      <h2>Enter the CPF number of the user to be managed: </h2></br></br></br> 
      <div> 
       <%= label_tag :cpf_no, 'CPF Number:' ,class:"left_align" %> 
       <%= number_field_tag :cpf_no, params[:cpf_no] %> 
      </div> 
      <div> 
       <%= button_to "  Find  ", users_find_path , class: "btn btn-large btn-primary" %></br></br> 
      </div> 
     </div> 
    </div> 
    </fieldset> 
<% end %> 

,這是在我的控制器find方法:

class UsersController < ApplicationController 
    ... 
def find 
if request.post? 
@user = user.find_by_cpf_no(params[:cpf_no]) 
redirect_to edit_user_path(@user.id) 
end  
end 
... 
end 

,這是我的路線,如今:

   root  /        home#index 
      login GET /global/login(.:format)   sessions#new 
        POST /global/login(.:format)   sessions#create 
      logout DELETE /global/logout(.:format)   sessions#destroy 
     users_find POST /global/users/find(.:format)  users#find 
      users GET /global/users(.:format)   users#index 
        POST /global/users(.:format)   users#create 
      new_user GET /global/users/new(.:format)  users#new 
     edit_user GET /global/users/:id/edit(.:format) users#edit 
       user GET /global/users/:id(.:format)  users#show 
        PUT /global/users/:id(.:format)  users#update 
        DELETE /global/users/:id(.:format)  users#destroy 
      fields GET /global/data(.:format)   fields#index 
        POST /global/data(.:format)   fields#create 
     new_field GET /global/data/new(.:format)  fields#new 
     edit_field GET /global/data/:id/edit(.:format) fields#edit 
      field GET /global/data/:id(.:format)  fields#show 
        PUT /global/data/:id(.:format)  fields#update 
        DELETE /global/data/:id(.:format)  fields#destroy 

問題是它沒有去:id /編輯路徑...它反而調用創建方法,它給出了一些錯誤,因爲驗證沒有通過。我如何使它訪問查找方法?

回答

1

你應該把路徑放在你的form_tag中。

form_tag user_find_path, :method => :post 
    # other code 
    = submit_tag "Find" 
+0

可愛!有用!你能解釋爲什麼按鈕本身不起作用嗎?因爲它清楚地指向正確的路徑以及使用正確的http方法。路線應該照顧它吧? – viswa

+0

這是發佈,但只是沒有正確的道路。我認爲,沒有在form_tag本身指定路徑,它默認只去/ users,並且作爲一個帖子,這意味着它會轉到創建操作。 – MrDanA