2006-01-17 [長年日記]

_ [ruby][rails] acts_as_tree

おぉ。これを使えば、メーリングリストのアーカイブをスレッド表示とか簡単にできるなあ。 とりあえず、Message-ID: と In-reply-To: あたりから parent_id を割り出しておいて、 roots なレコードから再帰的に children をたどれば OK。

app/views/.../thread.rhtml:
<%= render :partial => "thread", :locals => {:articles => @articles}>

app/views/.../_thread.rhtml:
<% unless articles.empty? -%>
  <ul>
<% articles.each do |article| -%>
    <li><%=h article.subject %></li>
    <render :partial => "thread", :locals => {:articles => article.children} %>
<% end -%>
  </ul>
<% end -%>

それっぽく表示されてます。なんとなく DRY じゃないけど。

_ [ruby] Content Disposition

こういうのには対応してないのかな。

#<TMail::ContentDispositionHeader "attachment;\n filename*=iso-2022-jp''%1B%24B%24%5B%242%24%5B%242%1B%28B%2Epng">

filename*= の * がなければ、とりあえずエラーにはならないけど。

[追記]: あぅ。$KCODE が "EUC" か "SJIS" でないとダメ、か。"UTF8" でやってた orz。

--- tmail/textutils.rb~
+++ tmail/textutils.rb
@@ -178,6 +178,9 @@ module TMail
       'EUC'  => '-e -m',
       'SJIS' => '-s -m'
     }
+    if defined? NKF::UTF8
+      NKF_FLAGS.store('UTF8', '-w -m')
+    end

     def to_kcode(str)
       flag = NKF_FLAGS[$KCODE] or return str
[]

«前の日記(2005-12-31) 最新 次の日記(2006-02-01)»