Rails"渲染json:"用string生成输出而不用括号括起来?

时间:2015-04-11 03:31:10

标签: ruby-on-rails json

我是Rails的新手,正致力于创建一个应用程序来调用我现有的基于JSON / Rest的Web服务。当我进行一些调试时,我恰好注意到当我调用以下内容时,result是我创建的类的实例:

    render json: result

    #output:
    {"storyId":"f4744fd6-d982-4ccc-b176-a22cbb87716b","title":"StoryTitle","mainImageURI":"StoryImageLink","author":"StoryAuthor","description":"StoryDescription"}

浏览器中显示的输出将包含大括号,就像我习惯用json看到结果是我自己的自定义对象之一,但如果参数是一个字符串,那么只有字符串显示没有大括号。例如:

    render: json "id: #{result.id}")

    #output
    id: bb9fdc7d-de66-4eca-a37a-287bf0986f6c

会产生无花括号输出。这不是问题,我只是想知道为什么会这样。

1 个答案:

答案 0 :(得分:0)

问题是render json: render呈现.json文件。而render: json "string"。在Ruby中呈现json "string"的评估,这是字符串本身。