Rails

Instant Rails ActiveRecord の機能 その1

ActiveRecord はモデルに対応づけされたデータベーステーブルに対して登録、検索、更新、削除の操作方法を提供してくれる 登録を行うメソッド オブジェクトを作成し実行するインスタンスメソッドとクラスに静的に用意されているクラスメソッドがある メソッ…

Instant Rails ActiveRecord を利用する その3

テストクラス テストクラスに名前をつける時は命名規約に従ってテストする対象のクラス名の末尾に Test とつけたクラス名を使うテストクラスのファイル名は、テストする対象のクラス名のうしろに _test を付記したものになるuser クラスのテストクラスは Use…

Instant Rails ActiveRecord を利用する その2

ActiveRecord とは Rails では、MVCのM(モデル)を扱うために ActiveRecord というパッケージを利用するデータベースのテーブルやビューを意識することなく簡単にデータアクセスできるこれにより、開発者はビジネスロジックのプログラミングに専念できるAct…

Instant Rails ActiveRecord を利用する その1

ActiveRecord動作確認用プロジェクトを作る rails_apps>rails testActiveRecord create create app/controllers create app/helpers create app/models create app/views/layouts create config/environments create components create db create doc create…

Instant Rails データベースを作る

phpMyAdmin というDB管理ツールを使ってみる データベースを作る プロジェクトを作る rails_apps>rails -d mysql addressBook create create app/controllers create app/helpers create app/models create app/views/layouts create config/environments cr…

Instant Rails パッケージ構成

Instant Rails パッケージ構成は、以下の通り

Instant Rails 基本的な処理を作成

Todo モデルを介在して todos テーブルのデータ作成(Create)、読み出し(Read or Retrieve) 更新(Update)、削除(Delete or Destroy)つまり「CRUD操作」用プログラムを作成アプリケーションの制御や表示のコードを生成するため scaffold 「足場」…

Instant Rails データベースを用意

どのような名前のデータベースを用意すればよいのかは、 database.yml を確認。 「rails_apps/todo_app/config/database.yml」 development: adapter: mysql encoding: utf8 database: todo_app_development username: root password: host: localhost datab…

Instant Rails アプリケーションの構造

todo_app のディレクトリ構成を確認 Rails は、アプリケーション開発に必要なディレクトリ構成を規約として決めているこのため、設定ファイルを用意しなくても Convention over Configuration (CoC) の原則に従ってコードの生成やアプリケーションの開発がで…

Instant Rails 初 Rails アプリケーション

Instant Rails 起動 Manage Rails Application 起動 I => Rails Application => Manage Rails Application をクリック Create New Rails App... Manage Rails Application の Create New Rails App... をクリック 枠組み作成 コマンドプロンプトに rails -d …

Instant Rails インストール

InstantRailsWiki にアクセス InstantRailsWiki: http://instantrails.rubyforge.org/wiki/wiki.pl?Instant_Rails Instant Rails ダウンロードページに遷移 Instant Rails ファイルリスト: http://rubyforge.org/frs/?group_id=904 InstantRails-X.X-win.zip…

Railsの起動

Railsでリクエスト処理のためのプロセスを起動する際最初に行われることの1つは、config/environment.rb のロードenvironment.rb のロードは、public/dispatch.rb に記述あり 「public/dispatch.rb」 require File.dirname(__FILE__) + "/../config/environ…

development モード

development は Rails のデフォルトモードで、開発者がほとんどの時間を費やすところ クラスの自動的なリロード => http://d.hatena.ne.jp/e-coding/20091017 Railsクラスローダー => http://d.hatena.ne.jp/e-coding/20091018 ## config/environment.rb の…

test モード

ほとんどの場合 test 環境の設定を変更する必要がなさそう ## config/environment.rb の設定より優先される ## test 環境はアプリケーションのテストスイートを実行するためだけに使用 ## それ以外の目的で操作する必要はない ## test データベースはテスト…

production モード

production モードは Rails アプリケーションをホスティング環境に配置し外部からのリクエストを処理するときに実行するモードリクエストの度にアプリケーションの全てのクラスをリロードしないので高速 ## config/environment.rb の設定より優先される ## p…

カスタム環境

必要に応じて Rails アプリケーションを実行するための追加の環境が作成できるアプリケーションの config/environments ディレクトリにある既存の環境ファイルの複製最も一般的なユースケースは、ステージングやQAの導入など追加の production コンフィグ…

Railsの環境とコンフィグレーションのまとめ

後日、記載予定

Rails ログ

後日、記入予定

Syslog

後日、記載予定

Rails ログファイルの解析

パフォーマンス リクエストの実行時間に時間がかからなければ、かからないほど Rails プロセスで処理できるリクエストの数が増える パフォーマンスを示す数字が 1秒あたりのリクエスト数 で表しているのはこのためロガーによって報告される時間は、全く正確…

Rails のログファイル

Rails アプリケーションのlogフォルダには、標準環境に対応する3つのログファイルに加えMongrel のログファイルと pid ファイルが含まれているログファイルはカナリ大きなサイズになる可能性があるのでログファイルを簡単に空にするための rake タスクが用…

development モード: Railsクラスローダー

Ruby は、スクリプトファイルにその内容と一致する名前を付ける決まりはないRails は、Ruby ファイル名とそのファイルに含まれているクラスが常に直接的な相関関係にあるRails は Ruby の不明な定数に対してコールバックメカニズムを提供することを利用して…

development モード: クラスの自動的なリロード

Rails を使用する特徴的な利点の1つはdevelopment モードで作業を行っている時の迅速なフィードバックサイクルこの振る舞いは config.cache_classes 設定で制御している config.cache_classes が ture の場合 Rails はクラスのロードに Ruby の require を…

Railsの起動: 追加のコンフィグレーション

全てのオプションを確認したい場合 railties/lib/initializer.rb のConfiguration クラスのソースコードとドキュメントを参照RAILS_ENV 環境変数の値により、次にロードされる追加の環境設定が決定される

Railsの起動: コンフィグレーション

「config/environment.rb」 Rails::Initializer.run do |config| # Settings in config/environments/* take precedence over those specified here take precedence over those specified here (ここに指定されたものよりも優先される)つまりモード固定の環…

Railsの起動: ビルドイン情報

この時点で存在する唯一のビルドインは rails-stable/railties/builtin/rails_info新しく作成された Rails アプリケーションで表示されるデフォルトの「Welcome Aboard」index.html ページの「About your application's environment」リンクターゲット何か R…

Railsの起動: Rails、モジュール、自動ロード

Rails はほとんどの場合、コードを自動的にロードできるようにする単純な規約を規定Ruby のデフォルトの振る舞いを改善しているその仕組みは、コードからまだ定義されていないクラスやモジュールを検出すると以下の規約に基き、該当モジュールまたはクラスを…

initializer.rb

後日、コードをざっくり読んでコメントを記載予定コメントもありコードも読みやすいので、コメント日本語化になるかもwrails-stable/railties/lib/initializer.rb について(私は gem を使用したので/usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib にあ…

Railsの起動: イニシャライズ

次は initializer.rb という Rails スクリプトを要求(initializer.rb はこちら参照 => http://d.hatena.ne.jp/e-coding/20091012)このスクリプトはコンフィグレーションとして使用され、次に environment スクリプトによって使用 「config/boot.rb」 if vers…

Railsの起動: RubyGems

ブートスクリプトには rubygems が必要Rails をインストールする際、コマンドラインからgem install rails を実行しているので、おそらく RubyGems はご存知でしょうRails がブートスクリプトだけでロードされることがあるこのため、ブートスクリプトの次の…