RubyOnRails概要
Ruby on Railsとは
Ruby on Railsは、Rubyを使用したWebアプリケーションを作成するためのフレームワークです。
Railsでは、まずアプリケーションのテンプレートを作成して、その後で必要な箇所を修正することで開発を行ないます。
Railsは、CRUD処理(データの作成・読み込み・更新・削除:CRUD)を提供してくれるため、迅速にWebアプリケーションを開発することができます。
MVCアーキテクチャー
Railsでは、MVC(モデル/ビュー/コントローラ)という概念に基づいてアプリケーションを開発します。
[Browser] - [Controller] - [View]
|
[Model]
|
[Database]
- Browser
- ユーザがWebブラウザからサービスリクエストを発行し、処理結果を表示します。
- Controller
- ユーザーからの要求を処理し、モデルやビューと連携を行ないます。
- Model
- データの扱いを担当し、データベースとのやり取りを行います。
- Database
- モデルからの要求に従って、データを記録/提供します。
- View
- 処理結果データを用いてHTML文書を作成して、コントローラへ返します。
CoC(convention over configuration)
Railsは「CoC=設定より規約」というソフトウェア設計パラダイムを踏襲しています。
CoCとは、アプリケーション開発者の決定すべきことを減少させ、単純性と柔軟性を持たせる考え方です。
開発者の課題をアプリケーションおよびアーキテクチャの非定型的な部分だけに絞って、開発を簡素化することを目的とします。
Ruby on Rails設定関連
Railsのアップデート方法
rubygemからrailsインストールを行うことで、rubyパッケージ内のrailsが更新されます。
$ sudo gem install rails
$ rails -v
Rails 3.2.8
WEBrickの利用方法
WEBrickとは
WEBrickとは、Ruby言語で記述されたWebサーバー用フレームワークです。
RailsはWebサーバで動作するアプリケーションを作成するので、動作確認のためにWebサーバが必要となります。
RailsにはWEBrickが付属しているため、ローカルの開発環境で手軽に簡易Webサーバを構築して、動作確認を行うことができます。
WEBrick起動
起動させたいアプリケーションのルートディレクトリで下記コマンドを実行します。
$ rails server
=> Booting WEBrick
=> Rails 3.2.8 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-08-13 10:13:07] INFO WEBrick 1.3.1
[2012-08-13 10:13:07] INFO ruby 1.8.7 (2011-06-30) [i686-darwin9]
[2012-08-13 10:13:07] INFO WEBrick::HTTPServer#start: pid=16707 port=3000
WEBrickへアクセス
WEBrickはポート番号として3000を使用しています。 ブラウザからWEBrickへアクセスするには下記URLへアクセスします。
http://localhost:3000/
WEBrick停止
WEBrickサーバを停止するには、プロセスを停止させます。
起動コマンドを実行したコンソールから[Ctrl]+[c]を押します。
または、killコマンドを実行してプロセスを強制停止させます。
$ kill 16070
Bundlerの利用
Bundlerとは
BundlerはRailsアプリケーションに必要となるGemパッケージの種類やバージョンを管理する仕組みを提供します。
複数の開発環境でRailsアプリケーション開発をする場合、各開発環境ではアプリケーションで使用しているGemパッケージを同バージョンでインストールする必要があります。
Railsバージョン3系からアプリケーションで必要となるGemパッケージの管理にBundlerを使うようになりました。
bundleの利用
rails newコマンドでRailsアプリケーションを作成すると、「bundle install」が自動的に実行されます。
Railsアプリケーションを新規に作成した際の処理は以下のようになります。
- アプリケーション用のテンプレートファイルを作成する。
- 必要となるGemパッケージが記載されたGemfileを作成する。
- Gemfileに基づいたGemパッケージをインストールする。
- 他の開発環境で使用するためのGemfile.lockを作成する。
bundleを設定しない。
「--skip-bundle」オプションを利用すると「bundle install」を自動実行しません。
$ rails new app1 --skip-bundle
手動でbundleを設定する。
アプリケーションのルートディレクトリ「bundle install」コマンドを実行します。
$ bundle install
GemパッケージはGemfileを元にインストールされます。
Gemfileファイルに書かれたGemパッケージと、それらのGemパッケージが依存するGemパッケージも自動的にインストールされます。
Gemfile.lockはインストールされたGemパッケージの名前とバージョンが記録されたものです。
関連ページ
- Ruby
- RubyOnRails-概要
- RubyOnRails-アプリケーションの作成
- RubyOnRails-コントローラの作成
- RubyOnRails-ビューの作成
- RubyOnRails-データベースの作成
- RubyOnRails-モデルの作成
- RubyOnRails-マイグレーション
- RubyOnRails-Scaffold