我想用兩種不同的方式讓我的json呈現。現在我有as_json方法重寫來顯示JSON形式這樣一個完整的對象:兩種不同的as_json方法
{
prop1: stuff,
prop2: stuff,
innerthings: {
{
prop1:stuff,
prop2:stuff
}
{
prop1:stuff,
prop2:stuff
}
}
}
而且as_json樣子:
#Renders json
def as_json(options={})
super(
:except => [:created_at, :updated_at],
:include => [{:innerthings = > {
:except => [:created_at, :updated_at]
}}]
)
end
我也想有第二個選擇渲染是這樣的:當下面的代碼是用來
{
prop1:stuff,
prop2:stuff,
countinnerthings:10
}
目前,我得到的第一個渲染:
respond_to do |format|
format.json { render json: @thing}
end
我還希望能夠像as_list一樣渲染,我可以在像下面這樣的情況下使用它來呈現對象的簡單列表。
respond_to do |format|
format.json { render json: @things.as_list }
end
有沒有一種簡單的方法可以在rails上做到這一點?
這有效,但我不得不修改我的JSON做類似如果選項== nil || options.count == 0 basicjson else super(選項)結束 – steventnorris 2015-01-26 20:07:21