5

我正在使用名为“Setting”的 ActiveResource 模型连接到外部 Web 服务,该服务提供一些响应,如下例所示:

{"setting" => {"id" => 10, :details => {"10a" => 7, "10b" => 8}}}

问题是,ActiveResource 尝试对details哈希中的所有键进行符号化,但这是不可能的,并且会引发NameError: wrong constant name 10a. 是否有机会禁止符号化,甚至避免转换为details单独的对象?

谢谢

4

2 回答 2

0

您是否尝试过手动设置架构?我不知道你是否可以设置这样的嵌套属性。

class Setting < ActiveResource::Base
   schema = {'setting' => {'id' => :integer, :details => {'10a' => :integer, '10b' => :integer}}}
end
于 2012-09-03T01:09:16.690 回答
0

我假设单独的对象是 HashWithIndifferentAccess?您可以在使用之前尝试调用#deep_stringify_keys详细信息哈希吗?

于 2014-01-03T20:53:22.037 回答