2010-04-29 56 views
0

我有一個名爲'audioclip'的導軌模型。我原創地創建了一個'new'動作腳手架,我用'new_record'和'new_upload'取代了,因爲有兩種方法可以將音頻附加到這個模型上。ActionController :: MethodNotAllowed

去/ audioclips/new_record不起作用,因爲它需要'new_record',就好像它是一個ID。我試圖創建'/ record_clip'和'/ upload_clip'路徑,而不是改變它。

所以在我的routes.db我:

map.record_clip '/record_clip', :controller => 'audioclips', :action => 'new_record' 
map.upload_clip '/upload_clip', :controller => 'audioclips', :action => 'new_upload' 

當我瀏覽到/ record_clip,我得到

ActionController::MethodNotAllowed 
Only get, head, post, put, and delete requests are allowed. 

我不是非常熟悉,但路由的內部運作。這裏有什麼問題? (如果有幫助,我有這兩個語句以上 map.resources =>:audioclips

回答

1

是的,你的兩條路線與您的映射資源(map.resources => :audioclips位)發生衝突

如果你想繼續。使用資源,我建議你把上面一行:

map.resources => :audioclips, 
       :new => { 
        :new_record_clip => :post, 
        :new_upload_clip => :post } 

如果你想要更多的信息,軌道導向這個主題難以置信的幫助:

http://guides.rubyonrails.org/routing.html#adding-more-restful-actions

+0

謝謝! 我結束了這個工作,以創建路徑audioclips /新/記錄和audioclips /新/上傳這對我來說很好 – Lowgain 2010-04-29 20:39:42

相關問題