json を使用して、データのドキュメント バージョンを postgresql に保存しています。子、子の子など、すべての属性を持つオブジェクトのツリー全体を出力したいと思います。後日、いずれかのオブジェクトに属性が追加された場合は、後続の json に含めたいと思います。
少なくともすべての属性を必要とせずにコンテンツ全体を出力する方法はありますか? つまり、このようではありません:
json.(object_name, :id, :attr1, :attr2.... etc)
json を使用して、データのドキュメント バージョンを postgresql に保存しています。子、子の子など、すべての属性を持つオブジェクトのツリー全体を出力したいと思います。後日、いずれかのオブジェクトに属性が追加された場合は、後続の json に含めたいと思います。
少なくともすべての属性を必要とせずにコンテンツ全体を出力する方法はありますか? つまり、このようではありません:
json.(object_name, :id, :attr1, :attr2.... etc)
これが古いスレッドであることは知っていますが、同じことを考えていて、ここにたどり着きました。次に、ここで素晴らしい答えを見つけました=> Rails Jbuilderですべての属性を抽出する方法は?
@uiureo は を使用することを提案してjson.merge!
おり、それは私にとって完璧に機能しました:)
json.merge! object_name.attributes
json を次のように出力する場合:
{"id":1,"attribute1":1,"attribute2":2}
あなたはこれを行うことができます:
json.array! @my_object
ただし、次のような出力が必要な場合:
{"my_object":{"id":1,"attribute1":1,"attribute2":2}}
あなたはこれを行うことができます:
json.my_object @my_object