使うとスマートじゃない様子。
Ruby on Rails Code Quality Checklist - Articles - Matthew Moore
STI の仕組みを使わなくても、同じ様な事を実現するのは簡単で、STI に伴う弊害を考えると、STI は使うべきじゃない、といった事が書かれている気がします。ネックになっているのは、同一テーブルを使う事による密結合とかそういう話なんでしょうか。それ故に、マイグレーションが楽しくないとか、なんだとか?
原文である上記参考記事を見る前に、「STI 駄目なのか、実装が変なのか?」と勘違いしてコードを追いかけてたりしたわけですが、その存在自体が否定されているようですね?
まだ、駄目さが実感できていないので、何とも言えません。"Polymorphic associations"ってなんでしょう。STI によるアプローチは駄目だけど、ぽりもふぃっくな考え方はスマートだよね、というオチ(?)を付けたという事ですかね。
とりあえず、状況を見つつ、STI じゃないポリモフィックなアソシエーションの実現について、気にしてみようと思います。


コメントする