Windowsでrubyのpすると日本語が化けるんです
あとto_sqlをpするとダブルクオートがいちいちエスケープされてすごくうざいんです。。
結論
- pやめてputsする。
- rubyの引数に
-E Windows-31J:UTF-8
を追加する
pはそのオブジェクトがなんなのかちゃんと分かるように出力するとか、そういう役割があるみたいですね。楽ちんだからとずっとpしてました……
q = Employee.where(id: 209) p "to_sqlすると……#{q.to_sql}" puts "to_sqlすると……#{q.to_sql}"
PS$ruby .\hr.rb "to_sql\u3059\u308B\u3068\u2026\u2026SELECT \"EMPLOYEES\".* FROM \"EMPLOYEES\" WHERE \"EMPLOYEES\".\"ID\" = 209" to_sql縺吶k縺ィ窶ヲ窶ヲSELECT "EMPLOYEES".* FROM "EMPLOYEES" WHERE "EMPLOYEES"."ID" = 209 PS$ruby -E Windows-31J:UTF-8 .\hr.rb "to_sqlすると……SELECT \"EMPLOYEES\".* FROM \"EMPLOYEES\" WHERE \"EMPLOYEES\".\"ID\" = 209" to_sqlすると……SELECT "EMPLOYEES".* FROM "EMPLOYEES" WHERE "EMPLOYEES"."ID" = 209
(^ω^)にこっ