アウトプット10/1

<今日のカリキュラム>

rubyドリル

・chatappのメッセージ投稿機能実装

 

<メソッド整理など>

・collectionオプション

 指定したインスタンス変数にある要素の分だけ部分テンプレートが繰り返し表示されるオプション。例えばmessagesを変数で定義してcollectionオプションを使うとmessageが表示されるという使い方。

 

・l(エル)メソッド

 日付や時刻を表示するメソッド。

 

<分かっていなかったこと>

・mergeメソッド

・N+1問題

・render partial:

 部分テンプレートの呼び出すときの記述。renderが部分テンプレートを呼び出すメソッドで、どの部分テンプレートを呼び出すかはpartial: "部分テンプレートの名前"で決める。collectionオプションと組み合わせる。

 

<理解していないこと>

・複層ハッシュからの特定データ取得方法

 eachメソッドを使う

・論理演算子(重要!!)

 # aもbもtrueの場合にtrue → a && b 及び

 # aかbのどちらかがtrueの場合にtrue → a || b いずれか

 # aがtrueの場合にfalse、aがfalseの場合にtrue → !a 逆

・ER図

 DBのテーブルを図で表したもの。

・エンティティ

 サービスで扱われるデータ自体のこと。データが登録されるときに発生する。

・「placeholder」は、文字をうっすら表示する時に利用

・送信ボタンの実装

・requireメソッド params.require(:モデル名) # 取得したい情報を指定する

・permitメソッド

・アソシエーション復習

 has_many  :モデル複数形

 belongs_to : モデル単数

・references型/外部キー制約

 中間テーブルのマイグレーションファイルに記述する。

 t.references :room, foreign_key: true
 t.references :user, foreign_key: true

・ルーティングのネスト

    

<気付き>

 カリキュラムが進まない!今週末は旅行だから明日も頑張って月曜日までにはchatapp完成まで進めたい。