我使用Rails 5和MySQL。
我有一个Imagecapturing页面,想按下按钮,在我的Imagecapturing控制器中触发一个方法调用。我的尝试:
# imagecapturing index view:
<%= button_to "St. Gallen", action: "digitized_in_stgallen" %>
# imagecapturings_controller.rb
def digitized_in_stgallen
@imagecapturings = Imagecapturing.all.where("digitalisiert_in = 'St. Gallen'")
end
#config/routes.rb
Rails.application.routes.draw do
resources :imagecapturings
end
但我得到了
没有路线匹配{:action =&gt;&#34; digitized_in_stgallen&#34;,:controller =&gt;&#34; imagecapturings&#34;}
如何点击按钮触发&#34; digitized_in_stgallen&#34;控制器方法?
答案 0 :(得分:2)
您需要查看路线文件。
快速解决方法是使用以下命令更新您的路线文件:
resources :imagecapturings do
collection do
get :digitized_in_stgallen
end
end
我真的建议您在此处Rails Routing Guide快速查看导航指南。从长远来看,您可能会发现使用路径更容易维护,而不是声明控制器操作。