ひさびさ rails

This entry was posted by on Saturday, 4 November, 2006
>ちょっと仕事で rails を使ってあれこれやりました。ひさびさ。 > >rails というのは、使ってみると実によく考えられているなぁと思いますね。よく考えられているっていうのはつまり、「あれ、これはどうなっているのかな」という疑問があると、たいていその備えがある。「来てほしいところにちゃんと来る」感じ。 > >でも、わかりやすいかわかりづらいかというとはっきり言ってわかりづらいという気はします。疑問があったときにはたいていはソースを追っかけて調べるんですが、 require しまくりで構成が正直よくわからん。そのわりにドキュメントは薄いと思うし。まあ、だから本がいっぱい出てるんだと思いますが。 > >今回はわりと rake を使ってみる回になったのですが、たとえば、 lib/tasks の下に *.rake というファイルを配置すると勝手に読みに行く設定になっている、なんて情報はどこに記載されているんでしょうか。それを調べる手間も惜しくて、ソースを読んで解決したし、 rails の環境(というかDBへのコネクションを確立したりとか)のセットアップのタスクが environment という名前であるということもソースを読んで勉強しました。 > >関係ないけどちょっとはまったこと。 rake のタスク名は文字列でシンボルではない。ところが依存関係を記述する “task1″ => “task2″ という記法の場合、 rails というか ActiveSupport のおかげでキーがシンボルでも同一視されることになってるから、 :task1 => :task2 と書ける。 rails のタスクはこのシンボル記法がいっぱいあって、さいしょはシンボルで書けるのかと思った。そしたら依存関係のない単独のタスクをシンボルで書くと、これはハッシュではないのでそのまま rake に渡されて、 rake ではシンボルは無意味なのでタスクに登録されずに「そんなタスクねーよ」と怒られてしまった。少し混乱した。 > >でも「それはシンボルが文字列のサブクラスだと解決することですね」とは全然思わなくて rake か rails が紛らわしいっていう話だと思うけども。 >

Comments are closed.