Rails 呈现和传递查询参数



这是在登录操作中。我正在尝试调整它以发回return_url查询参数,但简单的渲染失败了。

事先:

  respond_to do |format|
    format.html {
      flash.now[:error] = error
      render
    }

尝试 1:

  respond_to do |format|
    format.html {
      flash.now[:error] = error
      render return_url => "blah" 
    }

尝试 2:

  respond_to do |format|
    format.html {
      flash.now[:error] = error
      render "login", local =>  {return_url => "blah"}
    }

我在错误后传递了 params[:redirect_after_error] 并解决了它。

  respond_to do |format|
            format.html {
                flash.now[:error] = error
                 params[:redirect_after_error]  = params[:return_url]
              render
            }

据我所知。您正在尝试将return_url传递给视图。右?因此,如果您愿意,您可以创建一个包含返回 url 值的实例变量例如

@return_url = root_path() #or change it to url you want
#Then follow with the code you written
#You will see that you can use @return_url in the view without doing anything else.

如果它没有回答你的问题。你能准确一点吗?我不太确定我是否正确理解了你的问题。

对于此视图,在渲染时应该有一个实例变量,因此如果它失败,您只需渲染root_path

前任:

@user = xxxx respond_to do |format|
如果@user保存 格式.html { redirect_to @users,注意:"已成功创建用户。

格式.html { 渲染root_path, :警报: 错误 }
结束
结束

最新更新