- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!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]