to_json在Rails中返回字符串而不是json[英] to_json returns string instead of json in Rails

本文是小编为大家收集整理的关于to_json在Rails中返回字符串而不是json的处理方法,想解了to_json在Rails中返回字符串而不是json的问题怎么解决?to_json在Rails中返回字符串而不是json问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

以下代码应该返回一个 json:

  @series = @series.map do |serie| {
    :name => serie.name,
    :id => serie.id
  }

  @series.to_json

返回如下:

"[{\"name\":\"Barra\",\"id\":3},{\"name\":\"Botafogo 1\",\"id\":1},{\"name\":\"Botafogo 2\",\"id\":2},{\"name\":\"Tijuca\",\"id\":4}]"

为什么它返回的是字符串而不是 json?

'json' gem 安装在我的 .rb 文件的顶部,并且是必需的

推荐答案

我刚刚解决了我的问题.出于某种原因,as_json 做我想要的,而不是 to_json.我不太明白为什么.如果我发现,我会更新我的答案.这很奇怪,因为 to_json 在我将开发数据库从 sqlite 3 更改为 postgresql 之前就已经工作了.但我不认为这可能是问题所在,因为它与 Heroku 的 postgre 数据库配合得很好.

本文地址:https://www.itbaoku.cn/post/786700.html