2011-02-03 10 views
2

ここですべての初心者をRailsにご案内します。現在、現在のユーザーのプロフィールにルーティング/プロファイルの問題があります。次のようにRails 3 - ユーザープロフィールへのルーティング

私のルートは以下のとおりです。

マッチ「プロファイル」=>「ユーザー#が示す」しかし、これは「IDなしでユーザーを見つけることができませんでしたと私に当たっている

を"エラー。私はそれがユーザーコントローラの私のショー方法と関係していることを知っています。このコードは単純です:

デフ
@user = User.find(のparams [:ID])を示し
終わり今

を、私は "と私のユーザーのコントローラで別のメソッドを追加することができます@user = current_user "とうまく動作します。しかし、それは少し冗長に見え、ショービューページのコピーも必要になります。私がRailsで集めたものから、物事をすっきりと整えておくことがすべての目的です。

誰かが私を正しい方向に向けることができれば幸いです。ありがとうございました。

答えて

4

RailsGuides状態:

あなたは単数ルート(/アカウント)で同じコントローラと複数のルートを(/アカウント/ 45)を使用する場合がありますので、単数形のリソースが複数のコントローラにマップします。

だから私はあなたが@userではなく、時にはインスタンスとid他の回で、常に実際のユーザーのインスタンスであることを確認するために、より良いおそらく

def show 
    @user = !params[:id].nil? ? User.find(params[:id]) : current_user 
end 
+1

次するようにコードを変更したいと思います。そうでなければ良い。 – DanneManne

+0

申し訳ありませんが、タイプミス。それをキャッチするためにありがとう。 –

+0

ありがとうございます。私は本当にそれがどのように動作するか分かりませんが、それはありません。私はRubyでもう少し精通したら、それを理解するだろうと思います。 – Timb

関連する問題