流中的多个JSON对象

时间:2012-02-23 03:45:14

标签: ruby-on-rails ruby json

我试图在视图中执行两个辅助函数,并在返回第一个函数时调用第二个函数。我知道以下函数正确返回所需的哈希值:

%p = helper_method0 params[:some_string] #does a request on a third party site which  responds with json data wich is then parsed by yajl and the hash is returned to view

但是,当我打电话给以下人员时:

- hash = helper_method0 params[:some_string] #does a request on a third party site which  responds with json data wich is then parsed by yajl and the hash is returned to view
%p= helper_method1 hash #Literally is just returning the input parameter

我收到以下错误消息

 Found multiple JSON objects in the stream but no block or the on_parse_complete callback was assigned to handle them.

如何从视图中调用带有输入参数的方法作为另一种方法的返回?

1 个答案:

答案 0 :(得分:2)

你在做什么是完全正确的:)

你也可以这样做:
(如果你想保存字节和变量)

%p= helper_method1( helper_method0 params[:some_string] )

但无论如何......
这个错误听起来像json解析器中的一个问题......你使用的是 Yajl 吗?

我在使用Yajl时遇到过这个问题:

parser = Yajl::Parser.new
hash = parser.parse(some_string)

对我有用的是使用这样的Yajl类方法:

Yajl::Parser.parse(some_string.strip)

我希望这会有所帮助:)