rails:245
From: take_tk <ggb03124@n...>
Date: Tue, 12 Jul 2005 11:21:26 +0900
Subject: [rails:245] ソースに漢字がかけない。
たけ(tk)です まあ、どうにかなったのですが、 (1)Railsのソースに漢字を書く場合にはutf-8でなければならない。つまり、 utf-8で書き込めるエディタがないと、漢字を書けない。 (2)utf-8からsjisへの変換はiconvでしか出来なかった。nkfやkconvでは文字 化けしてしまった。 という事が分かりました。 みなさんは、どんな風にしていますか? (3)漢字のソースは read+conv+eval で読み込む? (4)Railsの$KCODEを変える? (5)その他。 ---- $(rails_app)/app/models/aite.rb require "iconv" class Aite < ActiveRecord::Base # -- KANJI written in UTF8 -- @@human_names = { :aitecode => "コード", :aitename => "名称", :address => "住所", }.inject({}){|hash,kv| k,v=kv ; hash[k]=Iconv.iconv('SHIFT_JIS','UTF-8',v) ; hash } def self.humanize(name) name = name.to_s ret = @@human_names[name.downcase.intern] || name.to_s.humanize end end ---- ---- $(rails_app)/app/views/aites/list.rhtml <h1>Listing aites</h1> <table> <tr> <th>Edit</th> <% for column in Aite.content_columns %> <!-- FROM column.human_name --> <th><%= Aite.humanize(column.name) %></th> <% end %> </tr> <% for aite in @aites %> <tr> <td><%= link_to 'Edit', :action => 'edit', :id => aite %></td> <% for column in Aite.content_columns %> <td><%=h aite.send(column.name) %></td> <% end %> <td><%= link_to 'Show', :action => 'show', :id => aite %></td> <td><%= link_to 'Destroy', {:action => 'destroy', :id => aite}, :confirm => "Are you sure?" %></td> </tr> <% end %> </table> <%= link_to "Previous page", { :page => @aite_pages.current.previous } if @aite_pages.current.previous %> <%= link_to "Next page", { :page => @aite_pages.current.next } if @aite_pages.current.next %> <br /> <%= link_to 'New aite', :action => 'new' %> ---- Take_tk = KUMAGAI Hidetake たけ(tk)=熊谷秀武 -- ML: rails@r... 使い方: http://QuickML.com/
-> 245 2005-07-12 04:21 [ggb03124@n... ] ソースに漢字がかけない。 246 2005-07-12 04:33 ┣[yu1@t... ] 248 2005-07-12 05:34 ┗[stoyan@g... ]