我试图在视图中执行两个辅助函数,并在返回第一个函数时调用第二个函数。我知道以下函数正确返回所需的哈希值:
%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.
如何从视图中调用带有输入参数的方法作为另一种方法的返回?
答案 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)
我希望这会有所帮助:)