我有一个叫做贡献的类,属于用户。 /contributions/new.html.erb我包含以下代码,用于搜索用户是否有新的贡献。
<%= text_field_tag :search, params[:search], id: "search" %>
<%= link_to "Search", contributions_path, id: "search_submit" %>
在routes.rb中我有
resources :contributions do
get :search, on: :collection
end
和rake路线包括
search_contributions GET /contributions/search(.:format) contributions#search
在application.js.erb中我有 -
$(document).on("click", "a#search_submit", function(){
$.ajax({
url: $(this).attr("href"),
data: {query: $("#search").val() },
success: function(data) {
alert("Hello! I am an alert box!!");
}
});
});
在视图中调用搜索的正确路径是什么?
答案 0 :(得分:1)
contributions_path
指向index
的{{1}},但是,您需要将其指向contributions_controller.rb
search
您需要更新contributions_controller.rb
:
link_to
到
<%= link_to "Search", contributions_path, id: "search_submit" %>
现在它将指向<%= link_to "Search", search_contributions_path, id: "search_submit" %>
而不是contributions#search
。
答案 1 :(得分:0)
rake routes
为您显示正确的名称:
search_contributions GET /contributions/search(.:format) contributions#search
所以,应该是search_contributions_path