Hatena::ブログ(Diary)

リンゴの水やり?(はてな) このページをアンテナに追加 RSSフィード

2013-04-09 火

[]続続json出力のカスタマイズ as_jsonを使う

続json出力のカスタマイズ as_jsonを使うの続きです。

前回はリレーションをincludeでやってました。この場合movie.rbでas_jsonを書いても全然反映されませんでした。

それで、includeでごにょごにょしてました。

# studio.rb
class Studio < ActiveRecord::Base
  def as_json options = {}
  	super :only => 'name',
          # :include => :movies # 本当はこうしたかったがうまくいかないので下の様にしてた
          :include => {
            :movies => { :only => ['title'] }
          }
  end
end

includeからmethodsにするとmovie.rbのas_jsonが呼び出されます。

自分の管轄だけ扱えば良いのですっきりします。

# studio.rb
class Studio < ActiveRecord::Base
  def as_json options = {}
  	super :only => 'name',
          :methods => :movies
  end
end

# movie.rb
class Movie < ActiveRecord::Base
  def as_json options = {}
  	super :only => 'title'
  end
end

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

リンク元