すでに気づいている人も居るかもしれませんが、記事の右下にいくつか記事と関連のありそうな単語が並んでいると思います。タグです。このブログにタグを実装してみました。そこの単語をクリックすると、タグと関係のある記事が表示されます。
記事とタグの間の関係を表すクラス図は以下のとおりです。
上の図は
Kodougu で書きました。(これがやりたかった。^^)何をやっているのかというと、クラス図のメタモデル(ストラクチャとノーテーション)を設計して、設計したモデリング言語(クラス図)を使ってモデリングして上図を作成したということです。上図の場合、モデリング言語設計は 10 分くらいでできました。
もっとも、Kodougu のモデリング言語設計機能では、多重度が多の関連(属性)を要素に追加することが出来ないので、クラス図に属性をつけることはできません。
# 今がんばっています。
余談ですが、上図のような多対多の関連を実現するために、Rails ではテーブルを一つ作って、habtm という関連を作っています。(articles, tags, articles_tags という三つのテーブルが存在して、多対多関連の実現には articles_tags を使っています。habtm は has_and_belongs_to_many の略で、これを ActiveRecord で指定すると、多対多のテーブルの情報を使って自動的に関連を再現してくれます。)タグ実現の具体的な作業としては、ソースコードを自動生成したらドメインオブジェクトに habtm を一行追加して、ビューとコントローラを整えるだけです。なんというか、便利な世の中ですねぇ・・・。