[英]Rails form with 3 submit buttons
我想使用一个表单来创建一个管理页面...,其中有复选框表示管理员选择了哪个图像,然后是三个提交按钮:批准,编辑,删除。
form_tag是执行此操作的最佳方法吗? 如果不是,那么,如果我仅使用简单的按钮,如何连接它们以从选定的复选框收集数据?
谢谢...
一种方法是您可以使用三个按钮创建一种表单。 如果您使用的是form_tag,则可以通过执行3次Submit_tag来创建三个按钮。 对于commit_tags,请使用相同的:name参数,但使用不同的值。 处理表单时,请检查他们单击了哪个按钮,然后重新路由到适当的操作。
这样做避免了使用js与三种不同形式共享复选框的情况,以此类推。
遇到相同的问题,我尝试使用form_for,它似乎有效。 我只是添加了一个提交按钮以执行其他操作。
= form_for @request do |f|
= render 'shared/error_messages', object: f.object
= f.label :status
= f.text_field :status
...some more fields
= f.submit "Save changes", class: "btn btn-large btn-primary" <--- This is initial button
= f.submit "Accept", name: 'accept', class: "btn btn-large btn-primary"
= f.submit "Reroute", name: 'reroute', class: "btn btn-large btn-primary"
= f.submit "Solve", name: 'solve', class: "btn btn-large btn-primary"
然后在控制器中检查按下了哪个按钮:
if !params[:accept].nil?
if !params[:reroute].nil?
if !params[:solve].nil?
您可以在呈现的页面的源中找到的初始按钮的名称。 对我来说是“承诺”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.