2012-07-19 29 views
0

什麼是渲染json時添加自定義json輸出的最簡單方法?我看到人們重寫as_json或to_json,但他們通常排除屬性或包含關聯。有沒有包含純文本的方法?rails:如何將自定義json添加到json輸出

在我看來

def show_json 
    show_id = URI.decode(params[:id]) 
    show_id = show_id.gsub(/\s*$/,'') 
    logger.debug "\nshow json: #{show_id}\n" 
    @qtls = Qtl.find_by_sql("select * from qtls where qtl_name like '%#{show_id}%' or qtl_symbol in (select qtl_symbol from obs_traits where qtl_symbol like '%#{show_id}%' or trait_name like '%#{show_id}%');") 
    render :json => @qtls 
end 

這將返回類似:

[{qtl: {...qtl attributes..}},{... more qtls }] 

,我想補充一個特定的領域爲每個QTL。什麼是最好的方式來做到這一點?

回答

1

覆蓋as_json或使用一些寶石例如https://github.com/fabrik42/acts_as_api提供了許多模板,JSON

+0

謝謝:)特別acts_as_api的這一特點,我發現有用的,如果有人好奇:https://github.com/fabrik42/acts_as_api /維基/主叫-A-方法的最模型 – bdeonovic 2012-07-23 13:44:32