如何使用redirect_to传递局部变量?

时间:2017-07-17 08:13:19

标签: ruby-on-rails

我想传递局部变量的方式与我用render方法传递它的方式相同。

render :show, locals { reservation: reservation }

所以我寻找类似的东西,但它不起作用。

redirect_to new_reservation_path, locals { some_var:  some_var }

一些想法?

1 个答案:

答案 0 :(得分:2)

当您使用redirect_to时,实际上是通过302(默认情况下)向浏览器发送回复,告知其请求新位置。这使得无法将变量传递到目标操作,就像使用render一样。

您可以做的是,您可以将查询参数传递到浏览器的新位置

redirect_to new_reservation_path(reservation, some_var: some_var)

但这限制了您可以合理地在查询参数中发送的内容。您可以阅读有关redirect_to here的更多信息。