fat runnerのいろいろな記録と挑戦

体重100kg超のオッサンですが、フルマラソン完走を目指すことになりました。応援よろしくお願いします。

railsのテストが遅い

rails3を使った開発を始めて暫く経つんだけれど、rakeコマンドでするテストが遅くて困っていたんだけれど、autotestを使い始めて、この問題から解放された。

ふう。

ruby 1.9.3 on cygwin

いま、RoRを使った開発をやっていて、どうもTest:Unitの動作が遅いのが気になっている。こんなに遅かったらTDDなんてできない。
profilerで調べてみると、いろんなライブラリをrequireする部分で時間がかかっている様子。
ウェブで調べてみると、同じ症状で困っている人間が多数いるみたいだ。
この問題、Win32で最も深刻らしく、UbuntuやCygwinでは、大分マシらしい。

というわけで、Cygwinの上に開発用の環境を構築し直すことにした。
しかし、cygwinの標準のパッケージでは、rubyのバージョンは1.8.7。使いたいのは1.9以上。

というわけで、./configureしてmake。
 しかし、メモリが不足してmakeが落ちまくる。再起動してやりなおし。
今度はうまくいったが、今度はlibyamlがないとか怒られる。。
yaml をインストールしてから、再度makeしろとのこと。
yamlをダウンロード、make。それからやり直してみてもやっぱり怒られる。psychとかいうのがコンパイルできないらしい。

しかたない。本当は正しいやり方じゃないんだろうけれど、
gem install psych
で、クリア。

こんどはうまくいったかと思ったら、
ruby実行してみると、unable to remap うんたらかんたら、とかいうエラーが頻発。
調べてみると、rebaseallとかいうコマンドを実行すればいいのね。

ここまでで数時間消耗したけどなんとかruby 1.9 on cygwinインストール成功。

さて、肝心のrakeをcygwinで実行。

。。。やっぱり遅かった。
多少はマシになったけれどね。

add_column * :referencesの問題について

ハマったので、メモ。

rails3のmigrationでadd_columnを使って、他のテーブルへのforeign_keyを追加するのは、上手くいかないことがある。

ここに、同様の症状についての記載がある。

add_column :table_name(複数形), :other_table_name(単数形), :references
ではなく、
add_column :table_name, :other_table_name_id, :integer
とかくといいとのこと。

例えば、
add_column :daughters, :mother, :references
ではなく、
add_column :daughters, :mother_id, :integer 
と書く。
バッドノウハウみたいだけれど、こういうものなの?
記事検索
タグクラウド
アクセスカウンター
  • 累計:

人気ブログランキングへ
  • ライブドアブログ