如何在redirect_to中传递参数

时间:2018-10-01 19:03:03

标签: ruby-on-rails ruby

从Ruby入手,我已经使用脚手架生成了ProvsController。

它为我生成了这个创建方法:

def create
  @prov = Prov.new(prov_params)
  respond_to do |format|
  if @prov.save
     format.html {redirect_to @prov, notice: 'Success'}
     format.json {render :show, status: :created, location: @prov}
  else
     format.html {render :new}
     format.json {render json: @prov.errors, status: :unprocessable_entity}
  end
end

private
def prov_params
  params.require(:prov).permit(:name, :description)
end

在某些情况下,即params[:location].nil?是否为真,我想将参数发送回视图。我是这样做的:

format.html {redirect_to params[:location].nil? ? @prov : provs_url(location: 1), notice: 'Success.'}

但是@provprovs_url不同。我尝试过

@prov : @prov(location: 1)
@prov : prov_url(location: 1)

和其他一些变体,均未成功。所有这些组合都会引发错误。

我想要的是将location参数发送回与@prov中相同的视图。

1 个答案:

答案 0 :(得分:0)

好吧,我正在测试超过测试,发现了这个解决方案

T.nodes[1]

对我有用。