タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

stiに関するphareのブックマーク (2)

  • 単一テーブル継承 (Single Table Inheritance) の上手な扱い方

    Railsの単一テーブル継承 (Single Table Inheritance) を使うと、ActiveRecordではtypeカラムがnilでないオブジェクトのクラスはtypeを元に判定されます。 単一テーブル継承 (Single Table Inheritance) を使うには、テーブル定義時にtypeというカラムを定義します。 PLAIN TEXT LANG : RUBY class CreatePeople <ActiveRecord::Migration def self.up create_table :people do |t| t.column :name, :string : t.column :type, :string end end def self.down drop_table :people end end ここでpeopleテーブルに対応したPerson

  • 京の路: Railsで単一テーブル継承(Single Table Inheritance)

    ActiveRecord以外のORマッパーはどうなのかよく知らないのですが、Rails(というかActiveRecord)では、DB上の一つのテーブルを複数のモデルで共有する「単一テーブル継承(Single Table Inheritance)」というものが存在します。今日はこの単一テーブル継承についてちょっと紹介します。 ここでは種々のメッセージ機能を単一テーブル継承で実現する方法を例に、単一テーブル継承について紹介します。今回想定するメッセージ機能はSNSなんかでよく使われるであろう以下の3つです。 一般メッセージ:NormalMessage 招待メッセージ:InvitationMessage お問い合わせ:InquiryMessage それでは、すべてのモデルのデータ保存先となるMessageテーブルの定義から始めましょう。 まず単一テーブル継承をActiveRecordで使う為には

  • 1