0

渲染 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 添加一个特定的字段。最好的方法是什么?

4

1 回答 1

1

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

于 2012-07-19T21:07:31.400 回答