如何在未保存模型时更改respond_with中的位置而不覆盖行为

时间:2012-12-10 00:27:33

标签: 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

如果未保存帖子,即因为它未通过一次或多次验证,则控制器会转到my_custom_url,而不是呈现“新”视图,当没有给出位置时,它将执行该操作。

有没有办法阻止这种行为被覆盖?

1 个答案:

答案 0 :(得分:0)

事实证明,该位置毕竟没有改变,但是在生成网址https://github.com/rails/rails/issues/2798期间代码失败。