为了账号安全,请及时绑定邮箱和手机立即绑定

在rails redirect_to中传递参数

在rails redirect_to中传递参数

尚方宝剑之说 2019-12-11 12:09:23
我们如何在rails的redirect_to中传递参数?我知道我们可以使用以下方式传递ID:redirect_to :action => action_name,:id => 3如果我想传递其他参数(例如某些表单数据)怎么实现呢?编辑:对于Ruby 2语法,您必须将上面的代码段更新为:redirect_to action: action_name, id: 3
查看完整描述

3 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

只需将它们附加到选项:


redirect_to controller: 'thing', action: 'edit', id: 3, something: 'else'

会屈服 /thing/3/edit?something=else


查看完整回答
反对 回复 2019-12-12
?
慕姐8265434

TA贡献1813条经验 获得超2个赞

如果您正在使用RESTful资源,则可以执行以下操作:


redirect_to action_name_resource_path(resource_object, param_1: 'value_1', param_2: 'value_2')


or

#You can also use the object_id instead of the object

redirect_to action_name_resource_path(resource_object_id, param_1: 'value_1', param_2: 'value_2')


or

#if its a collection action like index, you can omit the id as follows

redirect_to action_name_resource_path(param_1: 'value_1', param_2: 'value_2')


#An example with nested resource is as follows:

redirect_to edit_user_project_path(@user, @project, param_1: 'value_1', param_2: 'value_2')



查看完整回答
反对 回复 2019-12-12
?
慕村9548890

TA贡献1884条经验 获得超4个赞

您可以使用flash参数将任意对象传递到模板。


 redirect_to :back, flash: {new_solution_errors: solution.errors}

然后通过哈希在模板中访问它们。


<% flash[:new_solution_errors].each do |err| %>



查看完整回答
反对 回复 2019-12-12
  • 3 回答
  • 0 关注
  • 286 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信