[Ruby] Ruby 1.9.1 と Ruby on Rails 2.3.2 を使ったちょっとしたテスト
最初に断わっておきます。
私は Rails 初心者なので、テストが適切でないかも知れません。
$ ruby -v
ruby 1.9.1p0 (2009-04-19 revision 23233) [i686-linux]
$ rails -v
Rails 2.3.2
$ rails utf8test
$ cd utf8test
$ ruby script/generate controller utf8test index
ここで、app/views/utf8test/index.html.erb を編集する。
<h1>Utf8test#index</h1>
<% form_tag '/utf8test' do -%>
INPUT:<%= text_field_tag 'name' %>
<br />
OUTPUT:<%= params[:name].encoding if params[:name]%>
<br />
<%= submit_tag "OK" -%>
<% end %>
テスト開始。
$ ruby script/server
「abc」と入力して【OK】ボタンを押すと US-ASCII と表示される。
「あいう」と入力して【OK】ボタンを押すと ASCII-8BIT と表示される。
で、OUTPUTのところを
OUTPUT:<%= params[:name].reverse if params[:name]%>
と変更して「あいう」を入力して【OK】ボタンを押すと
invalid byte sequence in UTF-8
とエラーになる。
| 固定リンク
この記事へのコメントは終了しました。
コメント