私はちょうど20 Rails Development No-Nos程度チャドファウラーのブログ記事を読んでいます。単一のテーブル継承で彼はコメントします:これはRailsの単一テーブル継承の正当な使用ですか?
クラス名を保持する "タイプ"と呼ばれる列の記憶は、何か怪物が起こっていることを示す良い指標です。それは魚介類ですが、必ずしも悪くはありません。私は、あなたがそれを使うときは、それが正しい解決策であれば何度でも尋ねるべきだと思います。データベースは、STIと多相関連がたくさんあるときに、彼らが最もよくやることをしません。
私はブログアプリケーションを作成していますが、私は投稿で作成できるコメントや、訪問者が私と連絡を取りたい場合に投稿できる連絡先メッセージにSTIを使用することを検討しています。私のMessage
モデルは私のComment
モデルから継承します。 Message
に余分なsubject
フィールドがあることを除いて、両方とも共通の属性を共有します。もう一つの共通点は、両方がスパムチェックのためにAkismetに提出されることです。
よりもむしろチャドが示唆するように、それは適切なソリューションだ場合だけで複数回自分自身に尋ねる、私は、同様のスタックオーバーフローの専門家からいくつかの意見を取得したいと思いました!私がSTIにうってつけのようなサウンドを提案していますか?
も参照してください。http://stackoverflow.com/questions/6073617/single-table-inheritance-or-class-table-inheritance –