2011-02-08 43 views
2

當我嘗試將我的對象轉換爲json以進行API連接時,出現一個奇怪的錯誤。以下詳細介紹了我的經驗。Rails JSON轉換錯誤

如果我打電話

JSON.generate(self) 

輸出

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

我只需要PARAMS在我的JSON對象,當我打電話

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> 

由於某種原因,params不被視爲散列。它序列化好,當我得到父對象,但失敗,否則。我如何才能序列化參數?

回答

2

原來我找到了一個相對簡單的解決方案。

不是

JSON.generate(object_to_serialize) 

使用

object_to_serialize.to_json 

按計劃會奏效。