rails:如何将自定义json添加到json输出

时间:2012-07-19 20:48:51

标签: ruby-on-rails json

渲染json时添加自定义json输出的最简单方法是什么?我见过人们覆盖as_json或to_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 个答案:

答案 0 :(得分:1)

覆盖as_json或使用一些gem来提供许多json模板,例如https://github.com/fabrik42/acts_as_api