【发布时间】:2023-03-29 16:52:01
【问题描述】:
我有一个带有事件模型的 rails 4 应用程序,我想使用 Ransack gem 在各种字段中进行搜索。
我的控制器操作:
def index
@search = Event.ransack(params[:q])
@events = @search.result(distinct: true)
end
我在 index.html.erb 中的搜索表单:
<%= search_form_for @search do |f| %>
<%= f.text_field :name_cont, class: "radius-left expand", placeholder: "Event Name" %>
<% end %>
但是,在加载页面时,我收到以下错误:
ActionView::Template::Error(# 的未定义方法 events_path'):1:
事件
2: 3: 4: 5: 6: app/views/events/index.html.erb :3:in_app_views_events_index_html_erb___2056451196739971413_70232473324180'当我 rake 路线时,我得到:
events_show GET /events/show(.:format) events#show
events_index GET /events/index(.:format) events#index
所以我假设如果我可以让这个表单指向 events_index_path,它会按预期工作。
我需要做什么来为表单指定正确的路径?
【问题讨论】:
-
我遇到了同样的问题。到目前为止,您是否有任何答案?
-
Tbh 我不确定我做了什么让这个工作正常。
-
对于路径的东西,看看我在这里想出了什么。 *.com/questions/30959046/… 我必须明确说明控制器/路由的路径才能使搜索表单正常工作。