sessanの日記

主に開発技術関連でお勉強したことをまとめていくサイトです。

ポリモーフィック関連でのフィクスチャの定義

class Player < ActiveRecord::Base
  belongs_to :playable, :polymorphic => true
end

class Video < ActiveRecord::Base
  has_many :players, :as => :playable
end

のようなポリモーフィック関連を定義しているとき、 fixtureには、以下のようにかけばよい。

# Video fixtures
video1:
  name: name1
# Player fixtures
player1:
  name: player1
  playable: video1 (Video)

いちいちFixtureのAPIを使って名前でidを検索して設定しなくてもOK。