0
「users/search」にPOSTする必要がある検索フォームがあります。以下の関連するコードスニペットです: - 私はこれは、ユーザー/に投稿することを期待フォームからカスタムアクションへのPOSTアクションで処理されていないPOSTエラー - 代わりにルーティングエラー
フォーム
<%=simple_form_for @user, :url => search_user_path(@user), :input_html => {:method => :post} do |f|%>
<div id="top" style="width:979px; height:30px;">
<%= select "search", :area_id, Area.find(:all).collect { |p| [p.name, p.id]}, {:selected => current_user.address.area} %>
<%= f.association :categories, :as => :check_boxes, :label => false%>
<%= f.submit "Submit"%>
</div>
<% end %>
:ID /検索
resources :users do
member do
post 'search'
end
end
routes.rbをすくいルートは| grepの検索
search_user POST /users/:id/search(.:format) {:action=>"search", :controller=>"users"}
のでルートは、私は私が無知で午前ルーティングエラー
Started POST "https://stackoverflow.com/users/9/search" for 127.0.0.1 at 2011-10-28 14:11:04 +0530
ActionController::RoutingError (No route matches "https://stackoverflow.com/users/9/search"):
を得る提出打つとき
ユーザーコントローラは、以下の方法
def search
Rails.logger.debug('In users#search')
end
を持って存在していますこれと無駄な研究の多くの後、私は入力のためにコミュニティに頼っています。どんな指針も非常に高く評価されます。ありがとう。
FYI私はあなたが複数でこれを書くために必要なレール3.0.9とRuby 1.9.2
-Tarun
がsearch_users_pathを使用することはできません必要いけない
代わりの
を書くことができます。 routes.rbをチェックすると、これがメンバーメソッドであることがわかります。したがって、search_user_path(@user)は実際には正しいです。 フォームの構文は若干異なりますが、ここで重要かどうかはわかりません。 –