best_in_place产生错误的JSON响应

时间:2016-05-05 17:07:30

标签: ruby-on-rails json error-handling best-in-place

我为best_in_place字段更新做了验证规则,它运行正常。

但问题是遵循JSON"无效"回应似乎被错误地形成了。 以下是JSON根据inspect格式化的方式:

{\"errors\":[\"Project name invalid length 5-120\"],\"status\":\"unprocessable_entity\"}

在我的控制器中我有:

render :json => {:errors => @project.errors.full_messages, :status => :unprocessable_entity}

其余的(js等)取自原始https://github.com/bernat/best_in_place回购。

你能不能给我一个暗示什么可能是一个产生那些奇怪的错误" /"你可能会在回复中看到......

提前致谢

PS: 我的第一个最新问题

1 个答案:

答案 0 :(得分:0)

不要担心。 \只是逃避角色。它告诉您在字符串中使用引号作为符号。例如:

puts "a string"                          # => this is a string
puts "a string with a \" quote"          # => this is a string with a " quote

您的JSON也是如此。

require 'json'

{a: 1}.to_json                           # => "{\"a\":1}"
puts("{\"a\":1}")                        # =>  {"a":1}

所以,当你打印JSON时,它最终看起来像这样:

{"errors":["Project name invalid length 5-120"],"status":"unprocessable_entity"}