2011-02-08 3 views
2

API 연결을 위해 json으로 객체를 변환하려고 할 때 이상한 오류가 발생합니다. 다음은 내 경험에 대해 자세히 설명합니다.Rails JSON 변환 오류

I 출력이

{"validation_context":null,"errors":{},"params":{"number":"123","name":"test"}} 

입니다 난 단지 내 JSON 객체의 PARAMS을 필요로하고 내가

JSON.generate(self.params) # or the next line 
JSON.generate(@params) #params has been set on the object as an accessor 

를 호출 할 때 나는

undefined method `merge' for #<JSON::Ext::Generator::State:0x1043f1a38> 
을 얻을

JSON.generate(self) 

를 호출하는 경우

어떤 이유로 params은 해시로 간주되지 않습니다. 그것은 부모 개체를 받고 있지만 그렇지 않으면 실패 할 때 확인을 serialize합니다. 어떻게 매개 변수를 직렬화 할 수 있습니까?

답변

2

밝혀졌습니다. 비교적 간단한 해결책을 찾았습니다.

보다는 의도 한대로 작동합니까

object_to_serialize.to_json 

를 사용

JSON.generate(object_to_serialize) 

.