そんな今日この頃でして、、、

コード書いたり映画みたり。努力は苦手だから「楽しいこと」を探していきたい。

Rails とりあえず使うための基礎

Rubyそのものの基礎は前回まででおさえたので、今度はRuby on Railsについて学習。

Ruby on Rails 3 アプリケーションプログラミング

Ruby on Rails 3 アプリケーションプログラミング


一応環境の設定自体は↓を参考に予め行なっていたので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