Ubuntu7.04jaでrailsを使えるまで
Ubuntu7.04 の日本語ローカライズ版のLinuxにRuby on Railsをインストールして動かすまでの手順。
まずインストール。
基本的な方針。
- aptitudeを使ってインストール
- Ruby on Railsで基本的に使うDBをMySQLに想定。
- とりあえず使える様になるまで行う。
まず、aptitudeで以下の4つをインストール
以下のコマンドを実行。
怒られてもめげずにYes!Yes!Yes!
sudo aptitude install rails
sudo aptitude install mysql-server
sudo aptitude install libmysql-ruby
sudo aptitude install rubygems
rubygemsは動かすだけじゃインストールする必要はないですが、
今後開発していくとき、rubyに対するaptitudeやcpanのような機能になるので、
sudo gem install パッケージ名
これを覚えると後々便利です。
次にアプリを試しに作ってみる。
プロジェクトフォルダを作ります。
わたしの例だと、自分のユーザーのホームフォルダ配下にprojectと言うフォルダをつくって
そこで開発しています。
mkdir ~/project
で、projectフォルダに移動します。
cd ~/project
試しにテストアプリケーションを作ります。
rails test
ここで、railsに必要なファイルが一気に作られます。
create
create app/controllers
create app/helpers
.... (略) ...
testフォルダにプロジェクトが作られているので、testフォルダに移動します。
cd test
ここでlsをするとこんな配置になってます。
README Rakefile app components config db doc lib log public script test tmp vendor
mysql の DB に testプロジェクト用にDBを作ります。
通常、開発用、テスト用、本番用と3つとかそれ以上作る事が多いですが、今回は手抜きして
開発用のみ作成します。
mysql -u root
でmysqlにログインして、DB作成コマンドを実行します。
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 22
Server version: 5.0.38-Ubuntu_0ubuntu1-log Ubuntu 7.04 distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database test_development character set utf8;
Query OK, 1 row affected (0.02 sec)
create database test_development character set utf8; が実際のコマンドです。
\qでmysqlを抜けましょう。
で、後はプログラムを作るだけですが、作る物をそういえば決めてませんでした。
名簿システムでも作ってみましょう。
まず、モデル(≒DB上のテーブル)を作ります。
名前とその人の説明だけ保存する事にします。
script/generate Model Peple name:text discription:text
ファイルが作成されます。
exists app/models/
exists test/unit/
exists test/fixtures/
create app/models/peple.rb
create test/unit/peple_test.rb
create test/fixtures/peples.yml
create db/migrate
create db/migrate/001_create_peples.rb
そして、作成されたスクリプトを元に、DB上にテーブルを展開します。
rake db:migrate
こんな結果がでます。
== CreatePeples: migrating ====================================================
ーー create_table(:peples)
-> 0.4291s
== CreatePeples: migrated (0.4297s) ===========================================
pepleのscaffoadを作成します。
script/generate scaffold Peple
関連ファイルがいっぱいできます。
exists app/controllers/
exists app/helpers/
create app/views/peples
exists app/views/layouts/
exists test/functional/
dependency model
exists app/models/
exists test/unit/
exists test/fixtures/
identical app/models/peple.rb
identical test/unit/peple_test.rb
skip test/fixtures/peples.yml
create app/views/peples/_form.rhtml
create app/views/peples/list.rhtml
create app/views/peples/show.rhtml
create app/views/peples/new.rhtml
create app/views/peples/edit.rhtml
create app/controllers/peples_controller.rb
create test/functional/peples_controller_test.rb
create app/helpers/peples_helper.rb
create app/views/layouts/peples.rhtml
create public/stylesheets/scaffold.css
サーバーを立ち上げます。
script/server
3000番のポートで立ち上げるので、
http://localhost:3000/peples
ローカルの3000番のpeplesパスにアクセスすると、
Peples: indexのページが作成されます。
いちおうこれで登録、編集、削除ができます。