私は使用してrespond_with
おり、データを正しく取得するためにすべてが正しく接続されています。json
返された,xml
およびフォーマットを DRYにカスタマイズしたいのですが、限られたandfoobar
を使用してそれを行う方法がわかりません。これらは、データが単純な場合には優れていますが、検索結果が複雑な場合は、私が望むものには達しません。:only
:include
has_many
画像の投稿があるとしましょう
def show
@post = Post.find params[:id]
respond_with(@post)
end
私はこれを行うことができるように、応答に画像を含めたい:
def show
@post = Post.find params[:id]
respond_with(@post, :include => :images)
end
しかし、画像オブジェクト全体を送信したくはありません。URLだけです。これに加えて、次のようなこともできるようになりたいです (疑似コード):
def show
@post = Post.find params[:id]
respond_with(@post, :include => { :foo => @posts.each.really_cool_method } )
end
def index
@post = Post.find params[:id]
respond_with(@post, :include => { :foo => @post.really_cool_method } )
end
…しかし、すべてドライな方法で。古い Rails プロジェクトでは、XML ビルダーを使用して出力をカスタマイズしましたが、json、xml、html で複製するのは正しくないようです。Railsの達人がRails 3に何かを入れたのを想像する必要がありますが、この種の動作については私は気づいていません。アイデア?