⭐️Rails知識チェックテストアウトプット

findメソッド

・主キーに対応するレコードを取り出す
・主キーを複数指定することも可能
・主キーが1つでも見つからない場合
ActiveRecord::RecordNotFound例外が発生する

https://gyazo.com/abaabd5d25e310e90852b16c0fe6b23b

ストロングパラメーター

・ユーザーに関わるname、email、パスワードなど、重要な情報を 悪意ある変更から守るために設定するセキュリティに関わるもの。

requireメソッドとpermitメソッド

https://gyazo.com/6da00ceccf19817032877b58d4d76b06

・controllerにて、上記のような記述をします。
.requireメソッドがデータのオブジェクト名を定め、
.permitメソッドで変更を加えられる(保存の処理ができる)キーを指定します。

これをあらかじめ設定しておくことで、
仮に悪意のあるリクエスト(指定した以外のデータを送ってくる等)を受けた際に、
.permitメソッドで許可していない項目については変更されず、データの扱いがより安全になります。

・参考サイト https://qiita.com/morikuma709/items/2dc20d922409ae7ce216#require%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%A8permit%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89

form_with、form_tag、form_forの違いについて

form_tag
フォームに入力されたデータを保存する必要がない時に使われる。

form_for
入力されたデータを保存する必要がある時に使われる。

form_with
Rails5.1以上から上記2つよりもこちらが推奨されている。

form_tagのように、入力された情報をデータベースに保存しない時は、以下のように記述。
https://gyazo.com/c6b8d94cf3a34823937f7617d2368970

一方、データベースに保存する時は、以下のように記述。
https://gyazo.com/f9e0610ea2c83f8323a13e6b5fc215ab

◉ルーティング暗記 f:id:sasakix10:20210525193707p:plain