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アプリケーションを新規に作成した際の処理は以下のようになります。

  1. アプリケーション用のテンプレートファイルを作成する。
  2. 必要となるGemパッケージが記載されたGemfileを作成する。
  3. Gemfileに基づいたGemパッケージをインストールする。
  4. 他の開発環境で使用するための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パッケージの名前とバージョンが記録されたものです。


関連ページ