Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.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 - Fatal编程技术网

Ruby on rails Rails JSON注入

Ruby on rails Rails JSON注入,ruby-on-rails,json,Ruby On Rails,Json,在Rails 2.3中,我总是使用 render :json => { :success => true, :data => @foobar} 将JSON数据发送到我的前端。在Rails 3中,我使用 respond_to :json ... respond_with @foobar 但我缺少的是:我需要JSON结构中的“success”值。在Rails3中,将这些数据注入JSON响应的正确方法是什么 嗯,我也试过了,但是我得到了以下错误: SyntaxError (ap

在Rails 2.3中,我总是使用

render :json => { :success => true, :data => @foobar}
将JSON数据发送到我的前端。在Rails 3中,我使用

respond_to :json
...
respond_with @foobar
但我缺少的是:我需要JSON结构中的“success”值。在Rails3中,将这些数据注入JSON响应的正确方法是什么


嗯,我也试过了,但是我得到了以下错误:

SyntaxError (app/controllers/properties_controller.rb:13: syntax error, unexpected tASSOC, expecting '}'
respond_with { :success => true, :data => @property }
                          ^
/app/controllers/properties_controller.rb:13: Can't assign to true
respond_with { :success => true, :data => @property }
                                ^
app/controllers/properties_controller.rb:13: syntax error, unexpected tASSOC, expecting tCOLON2 or '[' or '.'
respond_with { :success => true, :data => @property }

不能使用类似对象的值。您只需使用override
serializable_hash
方法在内部添加一些键/值

但是,您可以使用

respond_with { :success => true, :data => @foobar}

当事情不符合默认情况时,您需要返回到以前的自定义方式。
respond\u with
接受一个块

respond_with @foobar do |format|
  format.json { render :json => { :success => true, :data => @foobar} }
end

嗯,我也试过了,但结果是出现了以下错误: