アウトプット10/17
<今日のカリキュラム>
・非同期通信
<メソッド整理など>
・boolean型
trueまたはfalseの判定を行うデータ形式。Ajaxで既読判定時に使用する。
・orderメソッド
レコードの並び替えに使用。DESCは降順、ASCは昇順。
.order(id: "DESC")のように記述。
・エンドポイント
Ajaxにおけるデータ返却のアクションを事項するURLのこと。
・URLパラメーター
サーバに情報を送るためのURL末尾の文字列のこと。
・queryパラメーター
「?<変数名>=<値>」として情報を綴るURLパラメーター。
・pathパラメーター
URLパラメーターの一つ。リソースを識別するときに使用する。
・イベントハンドラー
JSでイベントが発火したときに実行される処理のこと。
Ajaxを使えるようにするためのオブジェクトで、サーバーにHTTPリクエストを非同期で行うようにすることができる。
<分かっていなかったこと>
<理解していないこと>
・「placeholder」は、文字をうっすら表示する時に利用
・送信ボタンの実装
・requireメソッド params.require(:モデル名) # 取得したい情報を指定する
・permitメソッド
・references型/外部キー制約
中間テーブルのマイグレーションファイルに記述する。
t.references :room, foreign_key: true
t.references :user, foreign_key: true
・ルーティングのネスト
・mergeメソッド
・N+1問題
・fill_inメソッド
・have_selector,have_contentの違い
指定したセレクタがあるかないかを判断するマッチャがhave_selector。have_contentは指定した文字列があるかどうかを判断するマッチャ。
・クラスメソッドとインスタンスメソッド
クラスメソッドではインスタンス変数(@〇〇)が使えない。
・sliceメソッドとslice!メソッド
array.slice(1) →配列の中から1番目の数値を取り出す。但し配列に影響はない。
array.slice!(1) →配列の中から1番目の数値を取り出す。取り出した数値は配列から削除される。
・afterメソッド
任意の処理の後に指定の処理を実行するメソッド。テストコードでFactoryBot後に画像を保存するコードを作るときなどに使用する。
・requireメソッド
ライブラリやクラスを読み込むための記述
・whileメソッド
無限ループを作るメソッド。条件式が真である間は処理を繰り返す。
・DOM
ドキュメントオブジェクトモデルのこと。 HTMLを解析し、データを作成する仕組み。JavaScriptではHTMLを階層として捉えて変換したデータと捉え、そのHTMLの階層を取得し、操作することでプログラムを動かす言語。
<気付き>
1週間終わり。週末はlesson4を終わらせるべく頑張っていきたい。