你好,我现在有一个关于button_to 的问题
我想在控制器中设置一个调用方法的按钮,这就是我设置按钮的方式:
(位于issues/_edit.html.erb中)
<%= button_to "Cancel Return", :action => "cancel_return", :controller => "issues" %>
我希望这将在issues_controller.rb 中调用此函数
def cancel_return
@issue.cancel_return(params)
end
我还在routes.rb 中添加了它
map.issue_cancel_return 'issues/cancel_return', :controller => 'issues',
:action => 'cancel_return'
但它不起作用,我已经尝试将cancel_return声明为helper_method,但它也不起作用。还有其他解决方案吗?还是我做错了?我使用的是ruby版本1.9.3p125和rails版本2.3.15,我使用旧版本是因为我试图修改redmine,任何帮助都将不胜感激。
感谢
您应该将它们放在像这样的大括号中
<%= button_to "Cancel Return", { :controller => "issues", :action => "cancel_return"} %>
发生的情况是map
没有定义像GET/POST/DELETE这样的调用的方法因此,您可以使用这个来代替routes.rb
文件中的map
行
get "issues/cancel_return" => "issues#cancel_return"
这应该能解决你的问题。