単一テーブルの継承に使用される型列を持つレガシー データベースと連携するアプリを作成しています。このデータベースはまだ既存の PHP アプリケーションで使用されているため、そこにあるものを操作する必要があります。このためにいくつかのモデルを設定しようとしていますが、キー テーブルの 1 つが STI スキームと型列で設定されていますが、その列の型はすべて完全に小文字です。
これまでのテストでは、クラス名に一致するように値を変更すると (たとえば、claimant ではなく Claimant)、Rails は type 列で正常に動作します。ただし、本番データベースでこれらの値を変更したくはありませんが、おそらく問題はありません。また、名前を別の方法で保存するためにレガシーアプリに移動して変更する必要もありません...
これを修正するために、2 つの質問があります...
1) type = 'claimant' が class = 'Claimant' にマップされることを認識するようにモデルを構成できる方法はありますか?
2)それができない場合、タイプ列があっても、このテーブルでSTIを使用しないようにレールに指示できる方法はありますか?
私はいくつかのグーグルを行いましたが、まだあまり思いつきません...