私はそのようなindex.rablを持っています:
collection @exchangers, :root => "bank", :object_root => false
extends "exchanger_lists/show"
などの show.rabl:
object @exchanger
attributes :id, :name, :address, :location_id, :latitude, :longitude, :exchanger_type_id
node(:location_name) {|exchanger_list| exchanger_list.location.name }
node(:exchanger_type_name) {"normal" }
child currencies(@exchanger) do
attribute :value, :direction_of_exchange_id, :exchanger_list_id
end
私のコントローラは次のとおりです。
def index
@exchangers = ExchangerList.all
end
def show
@exchanger = ExchangerList.find(params[:id])
end
ブラウザで show アクションを開くと、すべて問題ありません。ヘルパーに @exchanger オブジェクトが送信されます。すべて問題ありません。しかし!インデックス アクションを呼び出すと、次のようになります。
Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id
データがあれば大丈夫です...
index rabl ビューを使用してヘルパー @exchanger オブジェクトに送信する方法を教えてください。