スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

MySQLとRuby on Rails インストール(Windows)

MySQLを使ったRuby on Rails インストールにとてもハマってしまったので、
覚えているうちにメモします。
(特にMySQLのバージョンには注意!!)

環境は、
Windows7 Professional 64bit

行った事は、
1. Ruby のインストール
2. Rails のインストール
3. MySQLのインストール
4. MySQLドライバのインストール
5. scaffoldのインストール
です。

現在(2011.01.28)の各バージョンは
Ruby 1.8.7
gem  1.3.7
Rails 2.3.5
MySQL 5.5 (ただし、今回は5.0を使用します)

参考サイトは、
Ruby on Rails Pro
まさにっき(コードで世界を変えたい人の記録)
MySQLユーザ会


1 . Rubyのインストール
     まずは、Rubyをインストールします。
     このサイトから、"One-Click Installer (old)"をダウンロード。
    ダウンロードが終了したら、インストーラを開き、適当に進みます。
    ただし、下の図のように、チェックして下さい。
  
rubyInstaller1

     完了すると、Rubyとgem(Wikiを参照)が入ります。
     確認は、コマンドプロンプトを立ち上げ、
 ruby -v
 gem -v
    と打ち込み、それぞれバージョン番号が出てくれば、正常にインストール出来ています。

2. Rails のインストール
     次にRails(Wikiを参照)を参照します。
     こちらは、gemを使用します。
     コマンドプロンプトを立ち上げ、以下の
 gem install rails --include-dependencies --version [バージョン番号]
     確認は、コマンドから
 rails -v
     と打ち込み、バージョン番号が出てくれば正常にインストールできています。
     ここで、接続先が見つからない等のエラーがでていれば、Proxyの仕業かもしれません。
     ここを参照ください。


3. MySQLのインストール

     次にMySQLをインストールします。
     ここで、注意しなければならない事は、RubyがMySQLのバージョンにより不安定になる事です。
     MySQL5.1以上を入れるとエラーが出力されます。
     また、64bitバージョンを入れるとエラーが出力されます。
     ですので、今回は、MySQL5.0.xxの32bitバージョンを入れます。
     ダウンロード先は、MySQLユーザ会で確認して下さい。
     インストールは、適当に「次へ」で行けます。
     次に設定です。
     初期時に立ち上がる(もしくは、すべてのプログラム→MySQL)
     設定画面(MySQL Server Instance Configration Wizard)にて、設定します。
     適当にデフォルトの設定で「Next」を押していきます。
     以下の画面が出たら、設定を図のように行います。
    
MySQLSetting1

MySQLSetting2

     パスワード設定の部分が以下のようにでたら、 以前のMySQLのゴミ設定が残っています。
MySQLSetting3

     以前、インストールしたMySQLのパスワードを入れるか、すべて削除してください。
     (どうしてもできない人はここを参照)
     それ以外の人は、そのままパスワードを設定して終了してください。
     インストールの確認は、コマンドプロンプトにて
 mysql --version
      を打ち込んで、バージョンを確認出来れば、正常に設定されています。

4. MySQLドライバのインストール
     gemを使用し、MySQLのドライバをインストールします。
     ここで、MySQLを5.0以上を入れると、エラーが出力されますので注意!!!
     コマンドプロンプトにて、
 gem install mysql -- --with-mysql -config
     と打ち込みます。
     すると、インストールされるはずです。
     確認方法は、コマンドプロンプトにて
 gem list
     と打ち込んでください。 gemでインストールされたリストが表示されます。
     その中に、mysql(2.8.1 x86-mingw32)が入っていれば正常にインストールされています。

5. scaffoldのインストール
     こちらは、コマンドプロンプトで、
 gem so -a http://gems.github.com
 gem i amatsuda-i18n_generators
     上記記入では、古いバージョンであり、今後更新される事が無いとの
     ご指摘がありましたので修正します。

gem install i18n_generators
     "gem list" で確認すると、i18n_generators(バージョン番号)が確認できます。
 ruby script\generate i18n_scaffold user name:string age:integer comment:text
     と入力します。するとインストールが始まります。


これで、基本的な動作は、できるかな(^ ^)
ほんとに長かった。。。

終わり。
スポンサーサイト

テーマ : ソフトウェア開発
ジャンル : コンピュータ

Ruby on Rails の開発はじめのメモ

Ruby on Rails にて開発するときに、知っておきたい基本的なメモを書きます。
開発環境構築については、こちらを参照ください。

ここで、簡単にRuby on Rails の構造を書きます。
Ruby on Rails は、(私も知らないうちはそうでしたが)一つの言語と思われがちです。
でも、
rubyは、プログラミング言語

railsは、webアプリケーション構築のプラットフォーム
です。
つまり、railsは、rubyを使ってwebアプリケーションを簡単につくってくれる物です。

そこで、Railsについて簡単にメモします。
・設定よりも規約(CoC : Convention over Configration)という開発が概念を使っている
    Java等のコードは、結構設定に時間がかかります。
    それをもう規約で定めて、簡単にしちゃおう!という考えです。
    ですので、ファイル名の単語の始めを大文字にしなければいけない等のに縛りがあります。
     CやJavaを使っている方には、こういうのって結構納得ができない人もいますが、
    こういうモノだと考えてみれば楽です。

・Model ・ View ・ Controllerという構造
    プログラム構造が3つの構造になっています。
    Model :
        データ保存や複雑なロジックを実行する。
    View :
        HTML形式などに出力するものです。
    Controller :
        この両者の間に立ち、色々処理をするものです。

この概念がrails開発の基本になります。
その他にRailsには色々規約があります。
こちらのサイトに詳しく記載されています。
(プログラムより規約を理解するほうが早道だと私は思いました・・・)

それでは、簡単に見て行きます。

まずは、アプリケーションの下準備をします。
全体的に開発する上で下準備に必要な流れは以下の二つです。
1. アプリケーション作成
2. DBへのアクセス設定
3. DBの作成

ここで簡単にtestAppというアプリを作ってみます。
1. アプリケーションの作成
      アプリケーションの枠組みを作成します。コマンドプロンプトにて
 rails testApp -d mysql
      すると、testAppが作成されます。

2. DBへのアクセスを設定
     1で作成されたtestAppフォルダの中に、config/database.ymlのファイルがあります。
     このファイルを変更します。 (エディタ等で開いてください)
     ファイルの中に、このような記述があります。ここの"password"にDBのパスワードを書きます。
development:
  adapter: mysql
  encoding: utf8
  reconnect: false
  database: testApp_development
  pool: 5
  username: root
  password: ←ここにパスワードを書きます。
  host: localhost

3. DBの作成
     次にDBを作成します。
     コマンドプロンプトにて
cd testApp
     にて、アプリケーションフォルダのルートに移動し、
rake db:create
     にて、DBを作成します。
     すると、DBができます。出力は、おそらく"(in [アプリケーションパス] )"のみが出てきます。

それでは、確認をしてみます。
コマンドプロンプトにて、
ruby script/server
と打ち込み、ブラウザでhttp://localhost:3000/を開いてください。
すると、以下の画面が開きます。
rubyAppCreate1
更に、"About your application's environment"をクリックしてください。
以下のようにApplicationの内容が画面に出てきたら、下準備は完了です。
もし出てこない場合は、DBの作成がうまくいっていません。再度、DBの作成から確認して下さい。
rubyAppCreate2


終了する場合は、コマンドプロンプトにてCtrl + Cを押します。

次に簡単に、コントローラを作成し、簡単に文字列を表示してみます。
先程のtestAppにて、そのまま作成します。

     ここでは、helloContのコントローラを作成し、その中にhelloAct関数を作成します。
     コマンドプロンプトにて、アプリケーションのルートに移動し、以下を打ち込みます。
ruby script/generate controller helloCont helloAct
     すると、「色々作りました」という、出力が出てきます。
     次に、アプリケーションのルート以下のapp/controllersにhello_cont_controller.rbのファイルが
     出来ています。このファイルをエディタ等で開いてください。
class HelloContController < ApplicationController
  def helloAct
  end
end
     という、感じで書かれています。
     ここで、少し説明すると、helloContがhello_contコントローラになります。
     helloActがhelloActアクションということになります。
    
    それでは、先程のファイルを以下のように変更します。
class HelloContController < ApplicationController
  def helloAct
     @mes = "Hello Controller(*^_^*)"
  end
end
     ここで、@mesというものが追加されました。
     '@'は、アクセス修飾子です。 ここでは、C# で言う"protected"みたいな感じだと思ってください。
     次に、Viewの変更をします。
    アプリケーションのルート以下のapp/views/hello_cont/helloAct.html.erbを開いてください。

HelloCont#helloAct


Find me in app/views/hello_cont/helloAct.html.erb


    こんな記述があると思います。
    基本的にHTML構文です。このファイルの最後の行に、以下を追加してください。

<%=@mes%>


    これは、先程コントローラの"@name"をViewの中で呼び出しています。
    これで、完了です。
    それでは、コマンドプロンプトにて"ruby script/server"を実行して、
    http://localhost:3000/hello_cont/helloActにアクセスしてみてください。
    文字列が出てきたと思います。

次にModel(DB)を作成し、Modelから文字列を取得し表示します。
また、先程のtestAppを使います。
    それでは、コマンドプロンプトにて
ruby script/generate model OutMessage mesid:integer message:string
     と入力してください。すると、「色々出来ましたよ」って出力が出てきます。
     これで、モデルクラス(Table)が出来ました。
     次に、モデルオブジェクト(Record)を作成して、表示してみます。
     (ここでは、ActiveRecordを使用しています。)
     それでは、先程のhelloActを次のように変更してください。
  def helloAct
     OutMessages.create(:mesid => 1 ,:message => "New Model Create!!") # オブジェクト追加
     @mes = OutMessages.find(1).message  # 追加したオブジェクトの表示
  end
    ここでは、OutMessages.create(...)でモデルオブジェクトを追加しています。
    OutMessageがOutMessagesになっていることに注意してください。
    そして、OutMessages.find(... にて、表示しています。
    それでは、コマンドプロンプトにて"ruby script/server"を実行して、
    http://localhost:3000/hello_cont/helloActにアクセスしてみてください。
    文字列が出てきたと思います。

ここまで来るのに、結構苦労しました。
特に規約による作り込み方法を理解するのに大変でした。。。
Railsは、プログラムよりも、規約をきちんと読んだ方がいいなぁと思いました。

おわり。




テーマ : ソフトウェア開発
ジャンル : コンピュータ

プロフィール

ss_9

名前 :ss_9
紹介 :
20代はエンジニア、30代はプロ、40代は管理、50代は人脈。

Twitterボタン

最新記事
カテゴリ
AD
月別アーカイブ
RSSリンクの表示
RSSリンクの表示
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。