ポリモフィックのロジックを考えてみる
前提
- 下記が存在する
- Articleモデル
- Eventモデル
- Commentモデル
記事を参考に実装してみると下記になる
2.3.0 :008 > Comment.first.commentable
Comment Load (0.3ms) SELECT "comments".* FROM "comments" ORDER BY "comments"."id" ASC LIMIT ? [["LIMIT", 1]]
Event Load (0.2ms) SELECT "events".* FROM "events" WHERE "events"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
=> #<Event id: 1, name: "e1", content: "e_contet", created_at: "2019-12-08 02:19:18", updated_at: "2019-12-08 02:19:18">
参考記事