Ruby on rails 当模型未保存时,如何在不覆盖行为的情况下更改响应单元中的位置
给定以下控制器Ruby on rails 当模型未保存时,如何在不覆盖行为的情况下更改响应单元中的位置,ruby-on-rails,ruby-on-rails-3,controller,ruby-on-rails-3.2,respond-with,Ruby On Rails,Ruby On Rails 3,Controller,Ruby On Rails 3.2,Respond With,给定以下控制器 class Posts_controller < ApplicationController def create @post = Post.new(:params[:post]) flash[:notice] = 'Post successfully saved' if @post.save respond_with(@post, :location => my_custom_url) end end
class Posts_controller < ApplicationController
def create
@post = Post.new(:params[:post])
flash[:notice] = 'Post successfully saved' if @post.save
respond_with(@post, :location => my_custom_url)
end
end
class Posts\u controller我的自定义url)回复
结束
结束
如果一篇文章未保存,即由于一次或多次验证失败,控制器将转到my_custom_url,而不是呈现“new”视图,在没有给出位置时,它会这样做
有什么方法可以阻止这种行为被覆盖吗?事实证明,位置毕竟没有改变,但代码在url生成过程中失败了