加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 在验证失败后调用render后,Rails刷新页面

发布时间:2020-12-17 03:18:47 所属栏目:百科 来源:网络整理
导读:所以我有一个控制器动作看起来像这样: def create @term = Term.new(term_params) if @term.save redirect_to(@term) else render :new endend 验证失败时,将呈现新的操作视图,用户可以看到所做的错误.问题是这也将URL更改为localhost:3000 / terms,因此当
所以我有一个控制器动作看起来像这样:

def create
  @term = Term.new(term_params)
  if @term.save
    redirect_to(@term)
  else
    render :new
  end
end

验证失败时,将呈现新的操作视图,用户可以看到所做的错误.问题是这也将URL更改为localhost:3000 / terms,因此当用户出于某种原因想要刷新页面时,rails会想要将该用户重定向到术语索引页面.是否有一种简单的方法可以在刷新后将用户保留在新的术语页面上?

我实际上没有条款的索引页面,因为我不需要它,所以在这种情况下这整个情况都会引发错误.

解决方法

请考虑这个:

你看到的是条款,但与“条款索引”不一样.事情是,使用https,在你的“新”行动的路径.索引使用“get”并创建使用“post”.所以看起来一样但不是.

我认为在您的路径文件中,您需要以明确的方式定义“post”路径.

post "new-term" => terms#new

并且可能在您的控制器中定义:

render new_term_path

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读