タグ:Head First Rails ( 5 ) タグの人気記事
Head First Rails / 関連
きた、難しかった。

第6章 「「つながり」を作る」。

ついに他テーブルと結びつけるシステムを勉強した。
ここ、Railsの難しいところというか慣れが必要なところなんだろうなあ。

書くならなんとかなりそうだけど、
読めと言われたら、よく考えないと読めないなあ。
この章は明日ももう一度勉強しようと思う。

だけど、今までRubyを勉強してきた甲斐あって、
読めないRubyコードは今のところ、この本にはないです。
そこはうれしいところ。
だから、頑張ればRailsも読めるはず。
[PR]
by redchant | 2010-12-21 22:06 | Computer
Head First Rails / SQL、Validator
第4章「データベースファインダ」を勉強した。

ここまでは、単一キー指定でデータ取得→1レコード表示というシンプルな画面を扱っていた。
scaffoldだけで、これが出来てしまうんだから、それだけでもスゴイこととは思っていたが。
でも、心のなかでは、Railsはきっと複数キーの条件にも対応してるんだろなあと思ってました。
で、やっぱり、対応していました。装備していました。

s = params[:search_string]
ClientWorkout.all(:conditions=>["client_name = ? OR trainer = ?", s, s])

んまあ、スゴイです。
パラメータがハッシュで、値の配列の1コ目が条件文字列で、バインド変数(だっけ?)が続くなんて。
Railsを作った人、DHHさん、言わずもがな天才です。


[22:45]

勢いに乗って、第5章も勉強した。
第5章は、「データの検証」、つまり、Validatorについて。
Railsには便利なValidatorが装備されてました。
でも、独自なValidatorを実装したい場合については書かれてなかった。
どうやるんだろう。

まあ、とりあえず、覚えなきゃ。

validates_numericality_of :field1
validates_length_of :field1, :length=>32
validates_format_of :field1, :with=>/regular expression/
validates_uniqueness_of :field1
validates_inclusion_of :field1, :in=[val1, val2, ..., valn]

[PR]
by redchant | 2010-12-18 19:59 | Computer
Head First Rails / 結局CRUDを揃えることになったが、有意義!
第3章 「登録、更新、そして削除」を勉強しました。

まあ、予想は出来ていたことだが、
読込だけでなく、登録、更新、削除の機能を揃えることになりました。

だけど、この章では、どういう風にRailsが動いているのか少し理解が深まりました。少しだけど。
とても詳しく書いてあるし。Railsが親切だし。
まだ、Railsの中身まで探ろうという余裕はまだありません。
そんな楽しみはもう少し先にとって置くカンジで。
[PR]
by redchant | 2010-12-17 22:30 | Computer
Head First Rails / scaffoldを使わずにサイト作成
第2章を勉強しました。

第1章では、「ruby script/generate scaffold ...」で一気に「CRUD」できるサイトが作れちゃいましたが、
第2章では、「R」だけ、つまり「Read」だけするサイトを手作りしました。

Model作成では、「ruby script/generate model ...」、
Controller作成では、「ruby script/generate controller ...」コマンドでした。

また、config/routes.rbの中にコードを書いて、
どのControllerのどのメソッドを呼び出すか、を「設定」しました。

章タイトルの「scaffoldを超えて」が良いですね。
scaffoldが何をしているのか、とても勉強になりました。
[PR]
by redchant | 2010-12-16 21:16 | Computer
Head First Rails / 環境のインストールで苦戦
ちまたのRailsの本では僕には理解できなかった為、
わかりやすそうな「Head First Rails」でRailsの勉強を始めようとした。

が、Rails等のインストール方法について言及なし。

Railsをインストールするには、「gem install rails」というコマンドを打つ。
するとRailsの最新版をダウンロードする。つまりはバージョン3系。
けども、この本はバージョン2.3で書かれている。

ということで、2.3系をインストールに苦戦しました。
結果としては、
gem install rails --version 2.3.8
ということで。
なんとも苦戦しましたがgemコマンドの文法少し勉強になりました。
>rails -v
Rails 2.3.8
いぇいいぇい。

続けて、「tickets」アプリを作成する。
D:\Rails>rails tickets
いぇいいぇい。

続けて、「scaffold」する。
D:\Rails\tickets>ruby script\generate scaffold ticket name:string seat_id_seq:string address:text price_paid:decimal email_address:string
なんだこれは?

続けて、テーブルを作る。
D:\Rails\tickets>rake db:migrate
(in D:/Rails/tickets)
rake aborted!
no such file to load -- sqlite3

(See full trace by running task with --trace)
怒られた。
SQLiteをインストールしないとと気付く。
(「バンドルしてる」って書いてあるのにな・・・)
>gem install sqlite3-ruby
ふむ。
DLLが必要らしいのでダウンロードしてきてrubyのパスのbin配下に配置する。
D:\Rails\tickets>rake db:migrate
(in D:/Rails/tickets)
== CreateTickets: migrating ==================================================
-- create_table(:tickets)
-> 0.0060s
== CreateTickets: migrated (0.0080s) =========================================
ひゃっほう。

1章の残りは難しくない。
(バックグラウンドでなにをしてるかはわからないが・・・)

今日は仕事ですごく疲れたので、Railsの勉強はここまで。
[PR]
by redchant | 2010-12-14 21:24 | Computer