Edited at

Deviseを使ってるときに、ユーザー情報詳細画面を作成する

More than 3 years have passed since last update.


目的

Deviseでは、ユーザー情報編集画面は作られるが、詳細画面(参照)は作られない。

これをできるだけ手軽に作る。


作り方


config/routes.rb

devise_forの後に、ルーティングを追加する。


config/routes.rb

  devise_for :users, controllers: { confirmations: 'confirmations', omniauth_callbacks: 'users/omniauth_callbacks', registrations: 'registrations' }

resources :users, :only => [:index]
・・・

確認する。

$ rake routes

(略)
users GET /users(.:format) users#index
(略)


コントローラ

Usersコントローラを作成する。

$ rails g controllers Users index

不要なルーティングを削除する。(以下の行を削除する)


config/routes.rb

  get 'users/index'



ビュー

ビューを編集する。


app/views/users/index.html.erb

<section id="user-detail" class="scroll-page bg-white">

<div class="page-header">
<h1>会員情報</h1>
</div>
<table>
<tr>
<th>メールアドレス</th>
<td><%= current_user.email %></td>
</tr>
<tr>
<th>お名前</th>
<td><%= current_user.name %></td>
</tr>
</table>
</section>


確認

サーバを再起動したのち、確認しましょう。

http://localhost:3000/users/


参考

http://easyramble.com/create-users-index-show-on-devise.html