この列の名前を上書きすることはできますか?私はSTIを使用するために私のアプリケーションのいくつかの部分を変更していますが、他のフィールドが使用されています。私は整数型であることを好むでしょう。Rails/ActiveRecord - 単一テーブル継承 - オーバーライドタイプのフィールド
アイデア?
この列の名前を上書きすることはできますか?私はSTIを使用するために私のアプリケーションのいくつかの部分を変更していますが、他のフィールドが使用されています。私は整数型であることを好むでしょう。Rails/ActiveRecord - 単一テーブル継承 - オーバーライドタイプのフィールド
アイデア?
あなたが名前を変更するset_inheritance_column
を使用することができます。
は、指定された値に使用するために継承列の名前を設定、または指定によって返された値に(値が
nil
かfalse
の場合)ブロック。
しかし、列には、まだARとして文字列を置くことになるでしょうしなければならthe class name in there:
シングルテーブル継承
Active Recordは、カラム内のクラスの名前を格納することによって継承できますデフォルトでは "type"という名前が付けられています(Base.inheritance_column
を上書きして変更できます)。
はActiveRecord :: ModelSchema(3.2)内のコードによると、set_inheritance_column
方法が廃止され、あなたがself.inheritance_column = column