Rubyそのものの基礎は前回まででおさえたので、今度はRuby on Railsについて学習。
Ruby on Rails 3 アプリケーションプログラミング
- 作者: 山田祥寛
- 出版社/メーカー: 技術評論社
- 発売日: 2011/05/12
- メディア: 大型本
- 購入: 26人 クリック: 653回
- この商品を含むブログ (37件) を見る
一応環境の設定自体は↓を参考に予め行なっていたので2章から。
macを買って、今すぐherokuでruby1.9.3 + rails3.2しよう! - ppworks blog
アプリケーションの作成
rails new アプリ名
以下はディレクトリを予め移動してから
WEBrick起動
rails server
- eオプションでpuroduction、test、developmentなどの動作モードを指定できる。
後述する設定ファイルでDBの使い分けが可能。
コントローラ作成
rails generate controller コントローラ名
同時にテンプレートも作成可能
rails generate controller コントローラ名 テンプレート名1 テンプレート名2 …
generateで作成したものの削除
rails destroy controller コントローラ名
ページの作成
/app/controllers/コントローラ名_controller.rb
コントローラ内にメソッドを記述すると
def テンプレート名 …各種処理… end
※テンプレートへ値を渡すにはインスタンス変数[@〜]を使う
テンプレートは標準では下記の場所に作成する。
/app/views/コントローラ名/テンプレート名.html.erb
アプリケーション変数
アプリケーション全体で共通して使用するような変数は下記に記述する。
/config/application.rb
config.変数名
参照時は下記の形。
~ = アプリケーション名::Application.config.変数名
共通レイアウト
下記のファイルで定義されている。
/app/views/layouts/application.html.erb
ちなみにこの中の<%= yeald %>に各種テンプレートが挿入される。
使用するDBの設定
下記ファイルで使用するDBを設定する。
/config/database.yml
development、test、productionといった具合に設定を使い分けることが可能。
ちなみにデフォではdevelopmentが使用される。
モデルの作成
rails generate model モデル名 フィールド名1 : データ型1 フィールド名2:データ型2 …
データベースの作成
モデル作成が行われると下記ディレクトリにマイグレーションファイルが作成される。
/db/migrate/作成日時_create_モデル名s.rb
下記コマンドで実際にDBが作成される。
rake db:migrate