2003.07.18
mojix.orgの安直なトラックバックシステム
宮永さんが、Prefuse 73のエントリーにトラックバックをつけてくれた

mojix.orgのトラックバックシステム(alpha 1)はきわめて安直なもので、1個のエントリーに対応するオブジェクトに「trackbacks」というlines型プロパティを持たせて、トラックバックpingを受け取ると、そこに1行追加するだけ。

じっさいにトラックバックpingを受け取るのは「trackback」というPythonスクリプトで、そのコアになる部分は次のような感じ。

blog = context
if not hasattr(blog, 'trackbacks'):
  blog.manage_addProperty('trackbacks',[],'lines')
current = blog.trackbacks
line = '%s <a href="%s">%s : %s</a> : %s' %(timestamp, url, blog_name, title, excerpt)
current.append(line)
blog.manage_changeProperties(trackbacks=current)

Zopeの獲得の仕組みにより、これより下の階層にあるすべてのZopeオブジェクトは、これをメソッドとして使える。

アップデート(9/23):
mojix.orgのトラックバックシステムはその後、別の仕組みに移行しました。
現在は、データとプレゼンテーション(表示形式)を分離した作りになっています。