!!!Ruby on Rails のページ webアプリの開発を効率化するためのフレームワーク。 バージョンによって書式がかなり異なるので注意。 Rails3は国内の書籍は数冊程度、サイトも少なめ(2011/3時点)。 海外なら多少はある模様。 *インストール *利用 *コーディング *Q&A *参考 !!インストール !インストール作業一覧 *Rubyのインストール *gemのインストール *railsのインストール *mysqlのインストール !インストール $ sudo apt-get install ruby gem rails $ sudo apt-get install mysql-server mysql-client-5.0 mysqlのインストール時パスワードを設定するのでメモしておく。 !!利用 !アプリの雛型の作成 $ rails [アプリケーション名] $ rails [アプリケーション名] -d mysql (データベースまで指定する場合) とすることで、[アプリケーション名]のディレクトリが生成され、その中にwebサイトの雛型が生成される。この後、ルートディレクトリに移動してscript内のserverスクリプトを起動すれば、webサーバーが起動する。 ex) $ rails test -d mysql $ cd test $ ruby script/server これでwebサーバーが起動し、ブラウザからアクセス可能になるので、http://localhost:3000/にアクセスする。「Welcome aboard」と出れば成功。 !!コーディング !MVC(Model View Control) railsアプリの3つの構成要素。rails以外でもGUIアプリに一般的に用いられるデザインパターンでもある。ModelはViewの構造に依存させず、可能な限りControllerはコンパクトに作成する。 :Model:ロジック部分。データの操作、Viewへの更新通知を担当。 :View:表示処理やModelへの状態変更通知を行う。 :Controller:Viewに対するアクション(ユーザーの入力など)に対する応答の振り分け(表示するViewの選択やModelの更新指示など)を行う。 !JavaScript 試験中、動作不安定のためコメントアウト :基本: //ヘルパメソッドlink_to_functionを呼び出し、JavaScriptのコードを動的に生成する。 //コントローラの生成。app_rootはアプリケーションのルートディレクトリ。 // $ app_root > ruby script/generate controller ajax act1 //以下はクリックするとhello JavaScriptと表示する例。app/views/ajax/act1.html.erbを編集する。 // <%= javascript_include_tag :defaults %> // <%= link_to_function("click", // "//javaScriptコード // alert('hello JavaScript');") %> // //:Ajax:準備としてはrailsに標準で含まれているprototype.jsらをを読み込ませる //app/views/ajax/act1.html.erbを編集。 // <%= javascript_include_tag :defaults %> // *link_to_remoteメソッド !!各アプリケーションのディレクトリの構成 [application name] ┗┳app ┃┗アプリケーションのビュー・モデル・コントローラが格納されている。 ┃ ┣controllers ┃ ┣helpers ┃ ┣models ┃ ┗views ┃ ┣blogs ┃ ┃┗html本体 ┃  ┗layouts ┃  ┗htmlヘッダ ┣config ┣db ┣doc ┣lib ┣log ┣public ┣script ┃┗サーバーの起動やデータベースの生成用のスクリプトが格納されている。 ┣test ┣tmp ┗vendor !!Q&A !!参考 :基本から簡易ブログの作り方などを掲載:[Ruby on Rails Pro|http://maskana.homedns.org/rails/pro] :ひとりったーweb版をrailsで:[CodeZine|http://codezine.jp/article/detail/5127?p=3]