Rubyの要注意基本文法
- 文字列(String) とシンボル(Symbol) の違いに注意
https://qiita.com/Kta-M/items/53a13ef60e14fcb41193 - 文字列内の変数展開は ‘#{hoge}’ 表記
名前付きルートの使い方
- 対象のルーティングの末尾に ‘as HOGE’ を追記
- View で対象のルーティングに遷移するリンクのURLにて’HOGE_path’ と指定
- もし、対象のルーティングにパラメータを渡す際は、 ‘HOGE_path(x)’ の表記になる。
インスタンス変数とローカル変数
@hoge
: インスタンス変数、ビューに渡せない
hoge
: ローカル変数、ビューに渡せる
コントローラの基本7アクション
- new データを新規作成する
- create データを追加(保存)する
- index データの一覧を表示する
- show データの内容(詳細)を表示する
- edit データを更新するためのフォームを作成する
- update データを更新する
- destroy データを削除する
View で利用するタグについて
<% %>
では、タグ内の結果が画面に表示されずに処理される。
<%= %>
では、タグ内の結果が画面に表示される。
form_for における POST, PATCHの判定
form_forにおけるsubmit時のメソッドについて、特にPOST, PATCHから適切なものが指定される。
これは、コントローラから渡されたオブジェクトがEmptyかNotEmptyかによってActiveRecordのnew_record?メソッドは自動で判別してくれているため。
redirect_to と render の違い
-
redirect_to は、指定ルーティングに対してHTTPリクエストを投げる。そのため、コントローラ内の処理も実行される。
-
render は、他のアクションに対応するVierw を呼び出す。
View の描写のみを行うため、HTTPリクエストを送ったり、コントローラ内の処理は実行しない。