ruby-on-rails – 渲染:新的不会在验证之后进入正确的地方

我有一个“新”表单,在一个后期模型中得到验证.验证器启动时,它不正确地呈现.

新的信息页路径位于’/ posts / new’

在验证时,新的页面路径是’/ posts’..我需要返回’/ posts / new’.

这是我的控制器

def create
 @post = current_user.posts.build(params[:post])
 if @post.save
   redirect_to public_post_page_path(@post.public_url)
 else 
   render :action => :new
 end
end

我有一种感觉可能与我的表格有关.所以这里是formtastic第一行:

<%= semantic_form_for [:student,post],:html => {:id => "post_form"} do |form| %>

解决方法

这是从rails的正确行为.

在创建动作中,它只是渲染“新”视图文件.因此,该URL将被发布,但视图将正确显示该表单.这种行为没有错;而一般的轨道惯例是好的形式.另外,如果你刚刚渲染新的内置的rails错误工作;但是如果您重定向它们将不会显示.

如果你真的想要回到你需要使用的URL:

redirect_to

而不是渲染.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...