rubyをEclipseで使ってみる5

| | コメント(0) | トラックバック(0)

さて、rubyを触り始めて2日目ですが、これまでの軌跡としてはこんな感じ。
rubyをEclipseで使ってみる
rubyをEclipseで使ってみる2
rubyをEclipseで使ってみる3
rubyをEclipseで使ってみる4
ということで、サンプルに沿ってやってたら頓挫した、という感じ。
で、このままおいとくのも根性ない感じですが、まあ、ここで踏ん張ることが最適とも思えなかったので一度仕切りなおしてみることにしました。

別のサンプルを探してたらいい感じのところがありました。
Ruby On Rails チュートリアル&MORE
参考にさせていただきます。

早速新しくプロジェクトを作成してみる。
と、ここで始めてしったんですけど、プロジェクト作成時に
Create a WEBrick server
Create a Mongrel server
という選択肢があると思うんですけど、これrubyでできたWEBサーバだそうで。Apacheとかのセットアップしてないのにどうして動くんだろう?Radrailsに組み込まれてるのかなーとか、思ってましたがそーゆーことなんですね。え?知ってるって?

とにかく作ります。「Todolist」と。
次に・・・お、前回のサンプルと違います。次はDBを作成します。rakeで作るんじゃなくて手で作ります。

rubyをEclipseで使ってみる3でセットアップしたInstant railsが役に立ちそう。
コマンドプロンプトで以下のとおりにやってみる。

===========
C:\InstantRails-2.0\mysql\bin>mysql -uroot
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 71 to server version: 5.0.27-community

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>
===========

入れた。
そのままDBとテーブルも作成

===========
mysql> CREATE DATABASE todolistdb;
Query OK, 1 row affected (0.13 sec)

mysql> USE todolistdb;
Database changed
mysql> CREATE TABLE todolists (
-> id SMALLINT (5) NOT NULL auto_increment,
-> subject VARCHAR (255),
-> content TEXT,
-> PRIMARY KEY (id)
-> );
Query OK, 0 rows affected (0.14 sec)
===========

お手本だと、ここでdatabase.ymlにrootのパスワードを記述するようになってるけど、とりあえずローセキュリティーの方向で。

で、次に・・・前回頓挫したscaffoldの作成です。
scaffold Todolist
でGo・・・今度はうまく生成されたっぽい。

サーバを再起動シロと書いてあるので再起動
Generatorsタブと同じならびになるServersタブを選んで(なければWindow>Show view>Other>Serversででる)再起動。
前回のプロジェクトは残したままなので今回はポート3001が割り当てられていた。
でブラウザでアクセス。。。うまくいかね。

あれーなんでだろう、と思って生成されたファイルの確認をしようとしたら、ない。
いろいろ探してたら、なんと前回のenqueteプロジェクトの方にできてた。よくよくGeneratorsタブの中を見てみると、左上のところに「Current Rails Project: enquete」ってなってた。うわ、そーゆーことかよ。
Generatorsタブの並びから少し外れたところにRと小さく添えられたフォルダアイコンっぽいプルダウンがあって、そこで変えられた。

再生成してもう一回トライ。
うまくいった!と思ったらエラーが変わってただけだった。
#42000Unknown database 'todolist_development'
うん、これはわかる。database.ymlを書き換えてもいいし、DBのほうを変えてもいいでしょう。今回は早いほうでdatabase.ymlを書き換えた。
サーバを再起動して再々トライ。

・・・出た!やったー!初rubyアプリでございます。
ってスゲー!ここまででコーディングこれっぽっちもしてない!
ちょっと物足りない気もするけど、まあ事始だから。

ここまでで、学んだことは

DBはmigrationするよか手で作ったほうがうまくいく。ということだろうか。。

というわけで、今日はここまで。

追記:(2008-05-19)
なお、このままだとどの画面でも動きはするけど、何もでてこない状態になってしまう。
scaffoldのときに

Todolist subject:string content:string

のようにやると、一覧で各要素のデータが表示されたりedit画面で編集領域がでてきたりと、よりそれっぽくなる。

トラックバック(0)

このブログ記事を参照しているブログ一覧: rubyをEclipseで使ってみる5

このブログ記事に対するトラックバックURL: http://hirop0164.s326.xrea.com/mt/mt-tb.cgi/137

コメントする


画像の中に見える文字を入力してください。

このブログ記事について

このページは、ぴろしが2008年4月14日 23:49に書いたブログ記事です。

ひとつ前のブログ記事は「rubyをEclipseで使ってみる4」です。

次のブログ記事は「SeesaaブログにGoogle Analyticsを導入してみる」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。