Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 向Rails JSON输出添加字符串_Ruby On Rails_Json_Views - Fatal编程技术网

Ruby on rails 向Rails JSON输出添加字符串

Ruby on rails 向Rails JSON输出添加字符串,ruby-on-rails,json,views,Ruby On Rails,Json,Views,我需要输出自定义JSON,以便与现有软件向后兼容,这些软件是用Javascript编写的,因此我需要在JSON的末尾用“parseDate”(“在它的开头,和”);”来包装 我试着在控制器中这样做 def index @data = Data.all @products = Product.all respond_to do |format| format.html format.json {render :json => { :products => {:product

我需要输出自定义JSON,以便与现有软件向后兼容,这些软件是用Javascript编写的,因此我需要在JSON的末尾用“parseDate”(“在它的开头,和”);”来包装

我试着在控制器中这样做

def index
@data = Data.all
@products = Product.all

respond_to do |format|
  format.html
  format.json {render :json => { :products => {:product => @data.name}}}
end
结束

然后在视图中指定它:

app/views/products.json.erb

<%= p "parseData(" %>
<%= render :json %>
<%= p "};" %>


但它输出的纯JSON完全跳过了“parseData(“and”);”,为什么?如何使JSON被打印在视图的中间,然后将字符串附加到顶部和底部?

JSON渲染器支持回调选项。

format.json { render :json => { :products => {:product => @data.name }}, :callback => 'parseDate' }
您可以阅读源代码中的实现