Ruby on Rails2.1-ディレクトリ構造
Railsのヘルパースクリプトを使用してアプリケーションを作成すると、アプリケーションのディレクトリ構造全体が作成されます。Railsは、この構造内で必要なものを見つける場所を知っているため、入力を提供する必要はありません。
これは、アプリケーションの作成時にヘルパースクリプトによって作成されたディレクトリツリーのトップレベルのビューです。リリース間のマイナーな変更を除いて、すべてのRailsプロジェクトは、同じ命名規則で同じ構造になります。この一貫性により、大きな利点が得られます。プロジェクトの組織を再学習することなく、Railsプロジェクト間をすばやく移動できます。
このディレクトリ構造を理解するために、 demoインストールの章で作成されたアプリケーション。これは、次のように簡単なヘルパーコマンドを使用して作成できます-
C:\ruby\> rails -d mysql demo
次に、次のようにデモアプリケーションのルートディレクトリに移動します-
C:\ruby\> cd demo
C:\ruby\demo> dir
次のようなディレクトリ構造があります-
demo/
..../app
......../controller
......../helpers
......../models
......../views
............../layouts
..../config
..../db
..../doc
..../lib
..../log
..../public
..../script
..../test
..../tmp
..../vendor
README
Rakefile
それでは、各ディレクトリの目的を説明しましょう。
app−アプリケーションコンポーネントを整理します。ビュー(ビューとヘルパー)、コントローラー(コントローラー)、およびバックエンドのビジネスロジック(モデル)を保持するサブディレクトリがあります。
app/controllers− controllersサブディレクトリは、Railsがコントローラークラスを見つけるために探す場所です。コントローラーは、ユーザーからのWeb要求を処理します。
app/helpers− helpersサブディレクトリには、モデル、ビュー、およびコントローラークラスを支援するために使用されるヘルパークラスが保持されます。これは、モデル、ビュー、およびコントローラーコードを小さく、焦点を絞り、整理しておくのに役立ちます。
app/models− modelsサブディレクトリは、アプリケーションのデータベースに格納されているデータをモデル化してラップするクラスを保持します。ほとんどのフレームワークでは、アプリケーションのこの部分はかなり面倒で、退屈で、冗長で、エラーが発生しやすくなります。Railsはそれをとてもシンプルにします!
app/view − viewsサブディレクトリには、アプリケーションからのデータを入力し、HTMLに変換して、ユーザーのブラウザに戻るための表示テンプレートが保持されます。
app/view/layouts−ビューで使用するレイアウトのテンプレートファイルを保持します。これは、ビューをラップする一般的なヘッダー/フッターの方法をモデル化しています。ビューで、<tt> layout:default </ tt>を使用してレイアウトを定義し、default.rhtmlという名前のファイルを作成します。default.erb内で、<%yield%>を呼び出して、このレイアウトを使用してビューをレンダリングします。
config−このディレクトリには、データベース構成(database.yml内)、Rails環境構造(environment.rb)、着信Web要求のルーティング(routes.rb)など、アプリケーションに必要な少量の構成コードが含まれています。また、environmentsディレクトリにあるファイルを使用して、テスト、開発、およびデプロイメント用に3つのRails環境の動作を調整することもできます。
db−通常、Railsアプリケーションには、リレーショナルデータベーステーブルにアクセスするモデルオブジェクトがあります。作成してこのディレクトリに配置するスクリプトを使用して、リレーショナルデータベースを管理できます。
doc −このディレクトリは、を使用して生成されたときにアプリケーションドキュメントが保存される場所です。 rake doc:app。
lib−アプリケーション固有のライブラリはここにあります。基本的に、コントローラー、モデル、またはヘルパーに属さないあらゆる種類のカスタムコード。このディレクトリはロードパスにあります。
log−エラーログはここにあります。Railsは、さまざまなエラーログの管理に役立つスクリプトを作成します。サーバー(server.log)と各Rails環境(development.log、test.log、production.log)の個別のログがあります。
public− Webサーバーのパブリックディレクトリと同様に、このディレクトリには、JavaScriptファイル(public / javascripts)、グラフィックス(public / images)、スタイルシート(public / stylesheets)、HTMLファイル(public)などの変更されないWebファイルがあります。 )。これは、WebサーバーのDOCUMENT_ROOTとして設定する必要があります。
script−このディレクトリには、Railsで使用するさまざまなツールを起動および管理するためのスクリプトが含まれています。たとえば、コードを生成(生成)してWebサーバー(サーバー)を起動するスクリプトなどがあります。
test−あなたが書いたテストとそれらのRailsがあなたのために作成したテストは、すべてここにあります。モック(モック)、単体テスト(ユニット)、フィクスチャ(フィクスチャ)、および機能テスト(機能)のサブディレクトリが表示されます。
tmp − Railsはこのディレクトリを使用して、中間処理用の一時ファイルを保持します。
vendor −サードパーティベンダーが提供するライブラリ(基本的なRailsディストリビューション以外のセキュリティライブラリやデータベースユーティリティなど)はここにあります。
これらのディレクトリとは別に、デモディレクトリには2つのファイルがあります。
README −このファイルには、Rail Applicationに関する基本的な詳細と、上記で説明したディレクトリ構造の説明が含まれています。
Rakefile−このファイルはUnix Makefileに似ており、Railsコードの構築、パッケージ化、およびテストに役立ちます。これはによって使用されますrake Rubyのインストールとともに提供されるユーティリティ。