Railsに関するハマったこと
最近やったハマリ項目
script/consoleでreadlineのloadに失敗する
rpm等でインストールした場合は知らないが、rubyを./configure make make install
でしれっと最新版をいれた場合、./configureに「--with-readline-dir=/usr/local」または「--with-install-readline」をつけなければscript/consoleすらできない。
yum install readline-devel
をした後にRubyに以下のように、./configureにパラメータを渡す。
cd (rubyのソースディレクトリ) ./configure --with-install-readline make make install
でOK。ちなみにrubyのソースインストールに関して、make uninstallはない。次回からやるときはcheckinstall使うことにします。
RMagickの入ったWindows版Rails関係でGem update
Windows版のRMagickはバンドルされているバージョンのImageMagickとしか正常に動かない。
gem updateするとRMagickがupdateされないように気をつける必要あり。
MySQLのBLOBの最大容量は64KB
さっき、DBに画像を保存する部分を作っていたら、写真は正常にアップロードされるし、DBにもちゃんとBinaryのデータが格納されているのに、写真を表示したりすると、下半分グレーになりました。
「RailsによるアジャイルWebアプリケーション開発」でMigrationとファイルのアップロード関連をちょうど読んだばかりだったのですぐ気がついたけど、MySQLのBLOBの最大容量は64KBでした。
Migrationで、
t.column :data, :binary
とかしたカラムに写真データなどを入れると、64KB以上の写真の場合、後ろの方のデータがちぎれたりしました。
t.column :data, :binary, :limit => 1.megabyte
と、最大値を指定しないとダメです。直接DBのスキーマを編集したりしてる場合はMEDIUMBLOBとか使う必要がある。
参考:
RailsによるアジャイルWebアプリケーション開発 第2版
- 作者: Dave Thomas,David Heinemeier Hansson,Leon Breedt,Mike Clark,Andreas Schwarz,James Duncan Davidson,Justin Gehtland,前田修吾
- 出版社/メーカー: オーム社
- 発売日: 2007/10/26
- メディア: 大型本
- 購入: 18人 クリック: 300回
- この商品を含むブログ (134件) を見る