Ruby on rails RubyonRails-多重编辑
做了一个关于如何从一个选择中进行多次编辑的很好的教程。但我想在此基础上再接再厉。如果我想执行更多操作(编辑和销毁),该怎么办?这类似于Gmail在邮件上执行不同操作的能力 我创建了我的表单,我有一个操作的下拉菜单。表单转到我的控制器中的一个动作,该动作应该将表单重定向到正确的动作(编辑vs销毁)。我正在尝试使用并传递我的参数,但它无法正常工作Ruby on rails RubyonRails-多重编辑,ruby-on-rails,redirect,Ruby On Rails,Redirect,做了一个关于如何从一个选择中进行多次编辑的很好的教程。但我想在此基础上再接再厉。如果我想执行更多操作(编辑和销毁),该怎么办?这类似于Gmail在邮件上执行不同操作的能力 我创建了我的表单,我有一个操作的下拉菜单。表单转到我的控制器中的一个动作,该动作应该将表单重定向到正确的动作(编辑vs销毁)。我正在尝试使用并传递我的参数,但它无法正常工作 def action if params[:perform_action] == 'edit' redirect_to :action =&g
def action
if params[:perform_action] == 'edit'
redirect_to :action => 'edit_multiple', :structure_ids => params[:structure_ids]
elsif params[:perform_action] == 'destroy'
redirect_to destroy_multiple_structures_path, :structure_ids => params[:structure_ids]
end
end
但这不能正常工作。我的编辑倍数实际上被重定向到“显示”操作。即使我已经在我的路线和所有设置了它
如何正确地传递参数?或者这是一个传递方法的问题(如果是,我该如何改变它?)
或者正确的方法是什么(如果不是这样的话)
我很累,但没用
我正在routes.rb中使用一个集合,但我不知道如何将重定向_更改为发布帖子。有什么想法吗?好的,所以我似乎不知道如何在重定向到中获取要更改的方法,也不知道如何正确传递参数。因此,我“欺骗”并使用jQuery更改表单本身的操作:
$("#action").change(function(e){
var changeTo = $(e.target);
var value = changeTo.attr("value");
if(value == 'edit'){
$("form").attr("action","/myController/edit_multiple");
$("form").attr("method","POST");
}
if(value == 'destroy'){
$("form").attr("action","/myController/destroy_multiple");
$("form").attr("method","DELETE");
}
});
它没有经过优化,但可以工作。action是select标记的id。希望这对其他人有所帮助。仅供参考-这里的update\u all或delete\u all是您的朋友。类似Gmail的删除、存档等功能不需要表单,因此只需创建一个按钮或链接,即可使用所需功能。
您只需要一个表单来更改内容。此外,我有一个编辑多个结构的路径,但我不知道如何传递参数。