ポリモーフィックにしたクラスに対して、jbuilder でレンダリングをする場合、
json.partial! の分岐先 を切り替える一番よい方法は?
参考 http://shawnaexplainsitall.com/2015/01/28/mighty-polymorphin-power-rangers/
には次の例が出ています。
if pattern.content.is_a?(EtsyContent) json.partial! 'etsy_content/etsy_content', content: pattern.content else json.partial! 'indie_content/indie_content', content: pattern.content end
でも この方法の場合、クラスの種類の数だけ if 分岐の記述が必要になってしまいます。
クラス名、クラスの数の変化に強い記述はどうしたらよいでしょうか?
↑のページでの例なら、ruby コード中では
foo = pattern.content
とすれば、 foo には EtsyConent や IndyContent のインスタンスが設定されます。
(pattern.conent_type で条件分岐しなくても)
同様なことを jbuilder 中でおこないたいのです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。