title: Rationale behind render :new instead of redirect_to new for POST create?
body: <p>Given a rails RESTful controller</p>
  
  <pre><code>class WidgetsController
    def new
      @widget = Widget.new
    end
  
    def create
      @widget = Widget.new(params[:widget])
      render :new and return unless w.save
  
      redirect_to widget_path(@widget)
    end
  end
  </code></pre>
  
  <p>Other than to capture the parameters and render validation messages why is the convention to <code>render :new</code> instead of <code>redirect_to new_widget_path</code> if validation fails?</p>
  
  <p>As URL will alter from <code>/widgets/new</code> to <code>/widgets</code> if validation fails doesn't this break the concept of REST?</p>