アウトプット9/23
<今日のカリキュラム>
rubyドリル
chatapp企画、DB設計
<メソッド整理など>
・中間テーブル
DB設定において、多対多をつなげる際に使用する。多対多はカラムが無駄が出てよくないとされる。
・has_many :モデル, throughオプション
has_many :モデルで中間テーブルを定義するときのオプション。
<理解していないこと>
・レイアウトテンプレート
・複層ハッシュからの特定データ取得方法
→eachメソッドを使う
・resourcesメソッド
→7つのアクションをまとめて定義できる。
・7つのアクション(そらで言えるように)
・論理演算子(重要!!)
# aもbもtrueの場合にtrue → a && b 及び
# aかbのどちらかがtrueの場合にtrue → a || b いずれか
# aがtrueの場合にfalse、aがfalseの場合にtrue → !a 逆
<分かっていなかったこと>
・ER図
DBのテーブルを図で表したもの。
・エンティティ
サービスで扱われるデータ自体のこと。データが登録されるときに発生する。
・has_many :モデル
モデルのアソシエーションを定義するメソッド。一対多の場合に記述する。モデルファイルに記述する。
<気付き>
chatappのカリキュラムをしていると思い出せない内容が多いので良い復習になっている。じっくり焦らず進めたい。
アウトプット9/22
<今日のカリキュラム>
rubyドリル
結合テストコード(ユーザー&ツイート)
テストコードをまとめて記述する方法
chatapp導入
<メソッド整理など>
・have_selectorマッチャ→指定したセレクタが存在しているか判断するマッチャ。
have_selector "指定したいセレクタ" と記述する。
・セレクタ→htmlのbodyやheadなどのこと。
<理解していないこと>
・レイアウトテンプレート
・複層ハッシュからの特定データ取得方法
→eachメソッドを使う
・resourcesメソッド
→7つのアクションをまとめて定義できる。
・7つのアクション(そらで言えるように)
.マッチャ→expectの中の記述と結果のつながりを意味する。例えば、eqは関係が等しいことを意味する。他にも沢山ある。
<分かっていなかったこと>
・論理演算子(重要!!)
# aもbもtrueの場合にtrue → a && b 及び
# aかbのどちらかがtrueの場合にtrue → a || b いずれか
# aがtrueの場合にfalse、aがfalseの場合にtrue → !a 逆
<気付き>
4連休最終日でなんとか目標としていたテストコードのカリキュラムを完了することができた。テストコードはなんとなく大枠を理解できたので、つまずいたら戻って確認したい。
rubyドリルも2題解けたのでまぁまぁ合格点。
連休の課題をクリアできたけど、今週末もだらけないように頑張っていきたい。
アウトプット9/21
<今日のカリキュラム>
rubyドリル
結合テストコード(ユーザー&ツイート)
<メソッド整理など>
・hoverメソッド→find("ブラウザ上の要素").hover
いっぱいあったのでその都度整理しないと難しい。。
<理解していないこと>
・レイアウトテンプレート
・複層ハッシュからの特定データ取得方法
→eachメソッドを使う
・resourcesメソッド
→7つのアクションをまとめて定義できる。
・7つのアクション(そらで言えるように)
<分かっていなかったこと>
.マッチャ→expectの中の記述と結果のつながりを意味する。例えば、eqは関係が等しいことを意味する。他にも沢山ある。
<気付き>
後半から徐々にリズムを取り戻してきた。ruby ドリルも3問解けたし。
明日でテストコードを終わらせて、新しいアプリに移れるように頑張りたい。
rubyドリルも3題は解きたい!
アウトプット9/16
<今日のカリキュラム>
rubyドリル
<メソッド整理など>
<分かっていなかったこと>
・eachメソッドのブロック変数
→配列の中に配列がある場合の取り出し方は、eachメソッドを2回使って、
①1つ目のeachメソッドで配列の中の1つの配列を取り出す。
②2つ目のeachメソッドで配列の中の値を指定する。その場合の配列は
1つ目のブロック変数[].each do |2つ目のブロック変数|
#処理内容
end
と記述する。
・自己代入
→A = A + B は A+=B と記述する。
<理解していないこと>
・ルーティングのパス
・レイアウトテンプレート
・複層ハッシュからの特定データ取得方法
→eachメソッドを使う
・resourcesメソッド
→7つのアクションをまとめて定義できる。
・7つのアクション(そらで言えるように)
・比較演算子
→以下は「=<」ではなく「<=」で表記する(=が後ろ)。
・before_actionメソッド
・getsメソッド
→ターミナルから入力をするメソッド。但し、入力した数値は文字列になるため、計算したいときは、gets.to_iとする。
・バリデーション(応用:ツイートを保存しよう)
→データ登録の際に一定の制約をかけるメソッド。
「validates :カラム名, バリデーションの種類」で記述。
<気付き>
めちゃくちゃ疲れてrubyドリル1問のみ。しかも集中力が続かない。中々厳しい。
アウトプット9/19
<今日のカリキュラム>
rubyドリル
モデルの単体テストコード
<メソッド整理など>
・be_validメソッド→インスタンスが正しく保存させるが判断できること。
・valid?メソッド→インスタンスが正しいかどうか判断できること。binding pryを用いてエラーメッセージを確認する?
<理解していないこと>
・ルーティングのパス
・レイアウトテンプレート
・複層ハッシュからの特定データ取得方法
→eachメソッドを使う
・resourcesメソッド
→7つのアクションをまとめて定義できる。
・7つのアクション(そらで言えるように)
・比較演算子
・getsメソッド
→ターミナルから入力をするメソッド。但し、入力した数値は文字列になるため、計算したいときは、gets.to_iとする。
・バリデーション(応用:ツイートを保存しよう)
→データ登録の際に一定の制約をかけるメソッド。
「validates :カラム名, バリデーションの種類」で記述。
<分かっていなかったこと>
<気付き>
4連休の初日。軽井沢への移動であまり勉強できなかったけど、この休暇中は、
テストコードを終わらす&rubyドリル1日2問以上
の目標を達成したい。
アウトプット9/14
<今日のカリキュラム>
rubyドリル
RSpecの導入、テストコードの書き方
<メソッド整理など>
・テストコードの基本形は
RSpec.describe ' ' do
describe ' ' do
it " " do
expect( ).to eq ←exampleという。この中の記述と結果をマッチャという。
end
end
end
と書く。
・valid?メソッド:正しいかどうかを判定するメソッド。後にbinding.pryが続く。
<理解していないこと>
・ルーティングのパス
・レイアウトテンプレート
・複層ハッシュからの特定データ取得方法
→eachメソッドを使う
・resourcesメソッド
→7つのアクションをまとめて定義できる。
・7つのアクション(そらで言えるように)
・比較演算子
→以下は「=<」ではなく「<=」で表記する(=が後ろ)。
・before_actionメソッド
<分かっていなかったこと>
・バリデーション(応用:ツイートを保存しよう)
→データ登録の際に一定の制約をかけるメソッド。
「validates :カラム名, バリデーションの種類」で記述。
・getsメソッド
<気付き>
テストコード1回目は意外と楽しく学習できた。いうほどつまらなくはないかな。
久しぶりに5キロ走ってすっきりした。
在宅の時は仕事とプライベートを分けるために終業後にランニングをしようと思う。