Ruby1.8から2.0系(1.9系)への移行で困ったこと
2013年07月13日
今までRuby1.8系で動かしていたcgiを、2.0系(多分1.9系でも同じ)に移行したときにつまづいたところをメモしておく。
■1.rubyファイルのパスに要注意
cgiファイルの置き場所(パス)に日本語(マルチバイト文字)を含む場合、WebrickのWebサーバーで何故か下記のエラーが出る。
incompatible character encodings: Windows-31J and ASCII-8BIT
解決策:cgiファイルの置き場所(パス)を日本語(マルチバイト文字)を含まないところに移動
■2.requireの書き方
今まで、下記のように書いていた部分が読み取られなくなった。
require "folder/filename"解決策:先頭に"./"を付ける
require "./folder/filename"
■3.case文中のbreak
case文の中にbreakがあるとシンタックスエラーになるようになった。
case
when 条件文
処理
break
when 条件文
処理
break
end
解決策:breakを削除する。そもそもrubyのcase文にbreakはいらないみたい。
case
when 条件文
処理
when 条件文
処理
end
old « オカムラのワーキングチェアBaron(バロン)を買った | メイン | 久里浜ペリー祭花火大会に行った » new