Rails勉強1日目
目的(毎回書く)
- 次の業務でやるかもしれない
- 簡単にサーバーサイド作れるようになりたい
- Web周りの知識がからっきしなので強くなる
やること(毎回書く)
Ruby on Rails 5アプリケーションプログラミングを読了する。
Ruby on Rails 5アプリケーションプログラミング
- 作者: 山田祥寛
- 出版社/メーカー: 技術評論社
- 発売日: 2017/04/14
- メディア: 大型本
- この商品を含むブログを見る
やったこと
- 1 ~ 3章を読む
メモ
基礎の章
- アプリケーションフレームワークの世界では、ユーザーコードがアプリケーションフレームワークによって呼び出される
- DRY(Don't Repeat Yourself)
- Coc(Convention over Configuration)
- Rails5.1ではBabelが導入される
- RailsAPI: Web API開発に特化したRails
- RESTful(復習)
- ネットワーク上のコンテンツ(リソース)を全て一意なURLで表現しリソースに対するCRUD操作は全てHTTPメソッドで表現する考え方
rbenvを使ったrubyインスコ
railsのインスコエラーではまった
MVCの章
コントローラー関連の命名規則
コントローラー名→「Hello」とした時 - クラス名 → HelloController - ファイル名 → hello_controller.rb - ヘルパーファイル名 → hello_helper.rb - テストスクリプト名 → hello_controller_test.rb
→要はクラス名はcamelcaseでファイル名はsnakecaseってことな
コントローラー名はできるだけ操作対象のデータ名に沿って命名することが望ましい。
ビューの基本
部分テンプレート
ファイル名の先頭に_
が付与されますの
レイアウトテンプレート
Railsではデフォルトでapplication.html.erb
の「<%= yield %>
」に個別のテンプレートを埋め込んだ上で、最終的な出力を生成します。
application.html.erb
のことをレイアウトテンプレート(レイアウト)と呼びます
レイアウトのメリット
- サイトデザインを変更する場合もレイアウトのみ変更すれば良い
- 個別のテンプレートにはページ固有のコンテンツだけを記述すれば良い
- サイト構成に一貫性ができるため、使い勝手も向上する
jbuilder
アクションの結果をJSON形式で出力するためのテンプレート
ビューヘルパー
テンプレートファイルを記述する際に役立つメソッドの総称 フォーム要素の生成、文字列や数値の整形、エンコード処理などビューでやることをラップしてくれる
fixture
YAML形式のデータをデータベースに流し込むための仕組み
YAML
&
はエイリアスを意味する
データに別名(エイリアス)をつけることで、別の場所からそのブロックを引用する
*
は参照を意味する
モデルクラス
ORマッパー
- リレーショナルデータベースとオブジェクト指向言語との橋渡しを受け持つライブラリのこと
- ORマッパーを買いすることで、オブジェクト・リレーショナルモデルのギャップを解決
- 基本的にSQL命令を記述する必要がなくなる
ActiveRecord
データベースのテーブル一つを一つのモデルクラスとして表現する
その他
rails dbconsole
コマンドを利用することでconfig/datamase.yml
で定義した接続情報にしたがってデータベースクライアントを起動できる!- modelクラス消した時にdbまで反映できてなくて、migrateが効かなかった
- しっかりdbの中身を消そうね
Scaffoldingの章
Scaffolding: 基本機能をあらかじめ実装したアプリの骨格を作成する
感想
- 何とかついていけそう。
- もうちょいrubyの文法を学ばないとつまづきがち