Ruby-on-rails-2.1-rails-framework

提供:Dev Guides
移動先:案内検索

Ruby on Rails 2.1-フレームワーク

フレームワークは、ほとんどのアプリケーションを作成するプログラム、プログラムセット、および/またはコードライブラリです。 フレームワークを使用するとき、あなたの仕事は、あなたが望む特定のことをさせるアプリケーションの部分を書くことです。

あなたがRailsアプリケーションを書くために着手したとき、構成や他のハウスキーピングの雑用を残して、あなたは3つの主要なタスクを実行する必要があります-

  • アプリケーションのドメインの説明とモデリング-ドメインはアプリケーションのユニバースです。 ドメインは、ミュージックストア、大学、出会い系サービス、アドレス帳、またはハードウェアインベントリです。 そのため、その中に何があるのか​​、このユニバースに存在するエンティティー、そしてその中のアイテムがどのように相互に関連しているかを把握する必要があります。 これは、エンティティとそれらの関係を保持するためにデータベース構造をモデリングすることと同等です。
  • このドメインで何が起こるかを指定します-ドメインモデルは静的です。 動的にする必要があります。 アドレスはアドレス帳に追加できます。 楽譜はミュージックストアから購入できます。 ユーザーはデートサービスにログインできます。 学生は大学のクラスに登録できます。 ドメインの要素が参加できるすべての可能なシナリオまたはアクションを識別する必要があります。
  • ドメインの公開されているビューを選択および設計-この時点で、Webブラウザの用語で考え始めることができます。 ドメインに学生がおり、クラスに登録できることを決定したら、ウェルカムページ、登録ページ、または確認ページなどを想像できます。 これらの各ページまたはビューは、特定の時点で物事がどのように機能するかをユーザーに示します。

上記の3つのタスクに基づいて、Ruby on RailsはModel/View/Controller(MVC)フレームワークを処理します。

Ruby on Rails MVCフレームワーク

  • [。underline] #M#* odel * [。underline] #V#* iew * [。underline] #C#** ontroller原則は、アプリケーションの作業を3つの別個の密接に協力するサブシステムに分割します。 。

モデル(ActiveRecord)

オブジェクトとデータベース間の関係を維持し、検証、関連付け、トランザクションなどを処理します。

このサブシステムは、 ActiveRecord ライブラリに実装されます。このライブラリは、リレーショナルデータベースのテーブルとデータベースレコードを操作するRubyプログラムコード間のインターフェイスとバインディングを提供します。

Rubyのメソッド名は、データベーステーブルのフィールド名から自動的に生成されます。

Active Recordは、データベースの相互作用を簡単かつ効率的にする動的な属性ベースのファインダーや他の多くのヘルパーメソッドも提供します。

表示(ActionView)

これは、データを提示するというコントローラーの決定によってトリガーされる、特定の形式でのデータの提示です。 これらは、JSP、ASP、PHPなどのスクリプトベースのテンプレートシステムであり、AJAXテクノロジーとの統合が非常に簡単です。

このサブシステムは、 ActionView ライブラリに実装されています。これは、データプレゼンテーション用のプレゼンテーションテンプレートを定義するための埋め込みRuby(ERb)ベースのシステムです。 RailsアプリケーションへのすべてのWeb接続により、ビューが表示されます。

ActionViewは、プレゼンテーションの詳細をアプリケーションのコアビジネスロジックから分離するのに役立ちます。

コントローラー(ActionController)

トラフィックを誘導するアプリケーション内の機能。一方では特定のデータのモデルを照会し、他方ではそのデータを特定のビューのニーズに合った形式に編成(検索、ソート、マッサージ)します。

このサブシステムはActionControllerに実装されます。ActionControllerは、ActiveRecord(データベースインターフェイス)とActionView(プレゼンテーションエンジン)の間にあるデータブローカーです。

MVCフレームワークの表現

Ruby on Railsフレームワークの図解はここに与えられます-

Railsフレームワーク

MVCフレームワークのディレクトリ表現

Linux上での標準のデフォルトインストールを想定すると、次のようにそれらを見つけることができます-

tp> cd/usr/local/lib/ruby/gems/1.8/gems
tp> ls

次を含む(ただし、これらに限定されない)サブディレクトリが表示されます-

  • actionpack-x.y.z
  • activerecord-x.y.z
  • rails-x.y.z

Windowsインストールでは、このようにそれらを見つけることができます-

C:\>cd ruby\lib\ruby\gems\1.8\gems
C:\ruby\lib\ruby\gems\1.8\gems\>dir

次を含む(ただし、これらに限定されない)サブディレクトリが表示されます-

  • actionpack-x.y.z
  • activerecord-x.y.z
  • rails-x.y.z

ActionViewとActionControllerはActionPackの下にまとめられています。

ActiveRecordは、SQLデータベースのデータを操作するためのさまざまなプログラミング手法とショートカットを提供します。 ActionControllerおよびActionViewは、そのデータを操作および表示する機能を提供します。 Railsはそれらをすべて結び付けます。