Javascript 从HTML按钮调用Ruby函数而不转到新页面
一般来说,我对Ruby和web开发是新手。 我有许多按钮,我想做相同的功能,但不同的参数。 然而,为了测试它,我只想在我的控制器中调用一个非常简单的函数(称为gallery\u matches\u controller.rb) 在index.html.erb中:Javascript 从HTML按钮调用Ruby函数而不转到新页面,javascript,html,ruby-on-rails,ruby,Javascript,Html,Ruby On Rails,Ruby,一般来说,我对Ruby和web开发是新手。 我有许多按钮,我想做相同的功能,但不同的参数。 然而,为了测试它,我只想在我的控制器中调用一个非常简单的函数(称为gallery\u matches\u controller.rb) 在index.html.erb中: <%= button_to "Confirm", gallery_matches_path, action: "pleaseWork"%> 在gallery_中匹配_controller.rb def pleaseWork
<%= button_to "Confirm", gallery_matches_path, action: "pleaseWork"%>
在gallery_中匹配_controller.rb
def pleaseWork
puts "hello"
end
我收到以下错误:ActionView::MissingTemplate
我想我得到它是因为我的routes.rb线路出了问题,但我无法理解。我试着效仿人们的榜样,但似乎没有一个奏效。而不是
puts "hello"
试一试
错误消息表示缺少模板,因为如果您不告诉Rails输出其他内容,Rails会自动尝试呈现(输出)与控制器和操作名相同的模板
因此,在本例中,它希望自动呈现一个模板,如gallery\u matches/plesework.html.erb
。如果您显式地告诉它呈现一些文本,它将这样做,而不是寻找模板
另一方面,请工作
比请工作
更为传统。Rails对命名做了一些假设(“约定优于配置”),因此如果不遵循标准命名,您可能会遇到问题
而且,我不认为
<%= button_to "Confirm", gallery_matches_path, action: "pleaseWork"%>
将路由到预期的控制器。你可以
<%= button_to "Confirm", controller: "gallery_matches", action: "pleaseWork"%>
相反
<%= button_to "Confirm", gallery_matches_path, action: "pleaseWork"%>
<%= button_to "Confirm", controller: "gallery_matches", action: "pleaseWork"%>