0

私は現在user.rbとコントローラを生成する認証にdeviseを使用しています。アプリケーションのメインページであるWelcomeページ(認証後のルートページ)アプリケーションにユーザー作成アカウントの総数、現在のユーザーが選択した件数、現在のユーザーのその他の詳細を表示する必要があります。同じuser.rbとuser_controller.rbを使用しているときにユーザーページにルーティングできません。deviseを使用したレールのカスタムユーザページ - Rails 4とRuby-2.2の使用

routes.rbを

root "welcome_pages#home" 
    devise_for :users 
    resources :subjects 
    resources :books 

application.html.erb

<%= link_to "Home", root_path %></li> 
    <li><%= link_to "Books", books_path %></li> 
    <li><%= link_to "Subjects", subjects_path %></li> 
    <li><%= link_to "Users", users_path %></li> 

私は何をしないのですか?次のエラーが発生しています。

No route matches [GET] "/users_path" 

詳細情報を提供する必要があるかどうかを教えてください。

ありがとうございます。 _user.html.erbは、再利用可能な

ビューになりますので、

devise_for :users 
resources :users, only: [:index, :show] do 
    ..... 
end 

ユーザーコントローラ

def index 
    @users = User.all 
end 
  1. 優先バージョン:あなたは、別途のようなものをユーザーのリソースを追加しなきゃ

答えて

2

/users/index.html.erb

<%= render @users %> #this iterates thru all users and invokes _user partial 

ビュー/ユーザー/ _user.html.erb

<%= user.name %> #in this case you don't need @ since you used this rails shortcut @user.each do |user|. 
  • バージョン
  • ビュービュー/ユーザー/ index.html.erb

    <% @users.each |user| do %> 
        <%= user.name %> 
        .... 
    <% end %> 
    
    +0

    私はまだ同様のエラーが発生しています – cyborg

    +0

    どのようにリンクを呼び出しますか?コードを表示できますか? –

    +0

    routesのエラーを取り除くことができる場合index.html.erbにすべてのユーザを取得することは可能ですか?もしそうなら、どのように? – cyborg

    関連する問題