2011-06-17 11 views
0

レールのnoobはこちら。私はユーザーがプロファイル画像をアップロードできるようにレール3アプリでcarrierwaveを使用しています。私はこれを扱うために、別個のモデル、コントローラ、ビュー(profile_pictures)をセットアップしました。エラーを避けるために、足場を出発点として使用します。レールでのルーティングエラー3 app

ルートファイル:

resources :profile_pictures 

レーキルート:edit.html.erbに

edit_profile_picture GET /profile_pictures/:id/edit(.:format)   {:action=>"edit", :controller=>"profile_pictures"} 

リンク:

<%= link_to "profile picture", edit_profile_picture_path %> 

エラー:

No route matches {:action=>"edit", :controller=>"profile_pictures"} 

サイドノート:私は常にルートの問題に遭遇しています...そのナットを運転しています。私は、以前のルーティング形式を3つの経路に変換することに関する多数のページを見つけました。すべてのnubbiesを説明するルートに関する基本的なチュートリアルはありますか? ...好ましくはレール3のフォーマットですが、それがあれば、それ以前のバージョンもOKです。

ありがとうございます!

答えて

1

あなたがルート/profile_pictures/:id/editを持ってBecouse == @picture、<%= link_to "profile picture", edit_profile_picture_path(@picture) %>

をお試しください:それはオブジェクトかIDを期待されているので、ID

3

すべてのルートヘルパーの最初にそう呼び出しの一部として機能していませんあなたが持っている場所:

<%= link_to "profile picture", edit_profile_picture_path %>

は、あなたが持っている必要があり、何かのように:

<%= link_to "profile picture", edit_profile_picture_path(@user) %>

ここで、ユーザーはプロフィール画像コントローラで使用したいオブジェクトになります。オブジェクトを使わずにeditを使うのは、経路を指定する際によくあるエラーです。

関連する問題