ECのウェブ担当者のメモ

ECサイトを運営管理している、WEB担当プログラマのメモ

スポンサーリンク

RailsのSTI(Single Table Inheritance)を無効にする

f:id:jun9632:20160816174108p:plain

RailsのActiveRecordでtypeカラムがあると、STI(Single Table Inheritance)としてテーブルを使おうとします。

一つのテーブルでtypeの値によって複数のモデルが共有する感じです。

これ、とても便利なんですが、意図せずtypeカラムがあってもSTIとして扱います。

それのSTIを無効化する方法です

class Item < ActiveRecord::Base


  self.inheritance_column = :_type_disabled # 追加


end

以上です。

関連記事

marketing-web.hatenablog.com

marketing-web.hatenablog.com

Ruby on Rails 4 アプリケーションプログラミング

Ruby on Rails 4 アプリケーションプログラミング