title: Resourceful routes, but with the #create action using GET instead of POST
body: <p>While it's generally against our design principles, we need to have a controller execute it's <code>#create</code> action on a GET request (it's part of a workflow that involves a series of redirects for an external service).  Does anybody know what the intended way to do this is?  I don't really want to step outside of the resourceful routing framework provided by the Rails routes.  We don't need the <code>#index</code> action that would usually respond to that GET request.</p>
  
  <p>I found (surprisingly) that this works, but I don't know if it's intended, or if we'd be exploiting a bug in Rails and risking breakage later down the line:</p>
  
  <pre><code>resources :agreements, :except =&gt; [:index, :create] do
    get :create, :on =&gt; :collection
  end
  </code></pre>
  
  <p>If that <code>get :create</code> was <code>get :something</code>, we'd have had a route like</p>
  
  <pre><code>Helper:  something_agreement_path
  Request: GET /agreements/:agreement_id/something
  Action:  agreements#something
  </code></pre>
  
  <p>But Rails actually generates what we want:</p>
  
  <pre><code>Helper:  agreements_path
  Request: GET /agreements
  Action:  agreements#create
  </code></pre>
  
  <p>Bug, or feature?</p>