プログラミング勉強中!!

TECH::EXPERT 40期 受講生の筆者がその日学んだことをアウトプットしていくブログです。学習量によっては全て書ききれないこともあります。お気付きのことありましたバシバシコメントください!!3月中旬よりWEBエンジニアとして働くことになりました。日々の業務などについても発信させていただきたいと思います!!よろしくお願いいたします!!

楽しい!!rails c!!

はい、おはようございます。

昨日は最終課題にのめり込んでアウトプットできずにじまいでしたので、アウトプットします!!

 

現在最終課題に取り組んでいるのですが、そこでとても役に立っているのが、rails cコマンドです!!

 

昨日までどう使って良いのか全くわかっていなかったのですが、ようやく使い方がわかってきました。

 

昨日取り組んだのは、とある部分にデータを引っ張ってくる作業をしました。

 

前提として、アソシエーションが組んである状態をさします。

 

コントローラの状態は以下の通りです。

 

f:id:g1034725:20181220104149p:plain

@item = Item.find(2)と定義してある状態です。

 

この@itemを使って、find(2)の情報を引っ張って来たいと思います。

ターミナルの操作

cd projects/アプリケーション名

 

rails c

とします。

 

f:id:g1034725:20181220104553p:plain

こんな画面になったでしょうか?

 

次にitemを定義します。

item = Item.find(2)

とすると、下記の画面となり、アソシエーションを組んであるデータを確認できます。(正確には、テーブルにあるデータ)

f:id:g1034725:20181220104715p:plain

 

ここで、中身を見たいデータ名を入力します。

ここでは、引っ張りたいデータの中身を確認したいと思います。

item.conditionitem.sizeと入力します。

f:id:g1034725:20181220105056p:plain

入力結果が上記です。

 

この結果、item.conditionには引っ張れる情報があることがわかり、item.sizeはnillであることがわかります。

 

ということは、item.sizeに情報がない、もしくは登録されていない、登録されているが、何らかのエラーで引っ張れない、の3点ほどが原因と考えられます。(エラー解決は割愛)

 

ということで、sublime textに書いてあげましょう。

f:id:g1034725:20181220105457p:plain

はい、= @item.condition.conditionと記述することで、情報を引っ張れます。

 

ちなみに、何で@item.condition.conditionなの?という問いですが、下記のように入力したところ、より厳密にデータが取得できたからです。

f:id:g1034725:20181220105658p:plain

 

おそらく、conditionテーブルの中のconditionカラムと指定したため、厳密にデータを抜き出せたのだと思います。

 

さて、今日も頑張ろう!!!