繁体   English   中英

Ruby on Rails:form_tag不起作用

[英]Ruby on Rails: form_tag not working

我正在尝试创建一个具有下拉菜单的局部视图,以选择星期,当按下“提交”按钮时,请重新打开包含新数据的页面。 这是我遇到问题的代码:

= form_tag(:controller => "/payroll_issues", :action=> "index") do

单击该按钮时,它将带您到正确的url,但该页面未加载,并显示“未接收到数据,由于服务器未发送数据,因此无法加载网页”。

事情是,当我运行代码为

= form_tag(:controller => "/payroll_issues", :action=> "change_week") do

在change_week仅重定向到索引的地方,一切正常。 索引中我缺少什么吗?

表单标签助手使用method = 'post'创建一个表单标签,您的索引操作的路由可能已设置为仅接受'get'请求。

要进行检查,您可以运行rake routes

如果确实需要,您可以使用index动作添加一条路由来接受发布请求,如下所示:

# routes.rb
match '/' => 'payroll_issues#index', :as => :index, :via => :post

但是,使用问题中的第二种方法会更好,创建一个单独的操作并重定向。

def change_week
  #do change week stuff
  redirect_to payroll_issues_url
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM