私はrails 3.1.3(私は最新バージョンと思われます)を使用しています。私のアプリケーションでは、gem devise for user authを使用しています。ユーザー・ショー(プロファイル)ページを追加するために、私はUsers_Controller.rb
Devise User Show Pageコントローラが動作しない
class UsersController < ApplicationController
before_filter :authenticate_user!
def show
@userProfile = User.find(params[:id])
@user = current_user
@title = @userProfile.name
end
end
を追加し、routes.rb
ファイルに私はresources :users
を持っています。 私はまた、簡単なapp/views/users/show.html.erb
を持っています。 ローカルホスト:3000/users/1に手作業で行くときに、これはすべてうまく動作します。しかし、私がプロファイル<%=link_to "My Profile", user_path(@user) %>
(これは私のapplicationcontroller.rb
にあります)へのリンクを作成しようとすると、 No route matches {:action=>"show", :controller=>"users"}
しかし、私はレーキルート、アクションショーとコントローラのユーザーが表示されます。私は間違って何をしていますか? 助けてください!
ああ私はそれを理解した。 @userの代わりに、それはcurrent_userでなければなりません – Vasseurth