【第5章】ユーザーをデータベースに登録しよう アウトプット
インスタンス変数
@で始まる変数(@user)等
インスタンス変数をドット記法にて繋げることで、インスタンス変数に代入しているユーザーオブジェクトのnameやemailを取得し、表示することができる。
例
app/views/users/show.html.erb
<% provide(:title, @user.name) %>
<h1>
<%= @user.name %>, <%= @user.email %>
</h1>
erb(view)側だけでは、表示出来ないので次はコントローラーにアクションの指定を行います。
paramsについて
インスタンス変数を表示させるためには、コントローラー側でアクションを指定しなければいけません。
paramsと言うmethodを使用し、Usersコントローラーにリクエストが送信されると、params[:id]の[:id]部分がユーザーidの1に置き換わります。
app/controllers/users_controller.rb
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
上記の表記にて、ブラウザで表示されるようになります。
debuggerメソッドについて
app/controllers/users_controller.rb
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
debugger # インスタンス変数を定義した直後にこのメソッドが実行されます
end
debuggerメソッドを上記のように差し込むことによって、ターミナルにて、アプリケーションの状態を確認することが出来ます。
例
(byebug) @user.name
上記のコマンドを入れるとデータベースに入っているnameカラムを確認することが出来ます。
コマンドでの新しいディレクトリの作成方法
$ mkdir app/views/shared
作成コマンド、場所/フォルダ名/ファイル名
データーベース内の内容リセット
$ rails db:migrate:reset
上記のコマンドでデータベースの内容をリセットし空にします。
それでは、さらばーゆ。