2010-11-11 26 views
8

मेरे पास एक मॉडल है उपयोगकर्तामॉडल ऑब्जेक्ट को HASH संरचना में बदलने के लिए रेल विधि पर कुछ रूबी है?

u=User.find(1) 

मैं u उदाहरण को हैश में कैसे परिवर्तित करूं? क्या ऐसा करने के लिए कुछ अंतर्निहित विधि है?

+0

क्या आप इसे हैश में परिवर्तित करके प्राप्त करने की कोशिश कर रहे हैं? आप पाते हैं कि मॉडल वही करता है जो आप चाहते हैं। – Chowlett

+0

आप क्या करने की कोशिश कर रहे हैं? आप इसे पहले से ही 'u [' some_field ']' वाक्यविन्यास के माध्यम से एक्सेस कर सकते हैं। –

उत्तर

11

जवाब इतना पर यहाँ है: Rails Object to hash (उपयोग .attributes विधि)

मैं अद्यतन विधि rspecing, जब से तुम यह परम के रूप में एक हैश देना है के लिए इस की जरूरत है।

4

आप जो चाहते हैं उसे प्राप्त करने के लिए as_json का उपयोग कर सकते हैं।

@object = User.find(1) 

@object.as_json 

as_json मॉडल संबंधों के अनुसार

उदाहरण

हम as_json

के लिए यह बहुत

@object.as_json({except: [:created_at, :updated_at]}) 

आधिकारिक प्रलेखन जैसे स्तंभो बाहर कर सकते हैं जटिल ऑब्जेक्ट कॉन्फ़िगर करने के लिए बहुत लचीला तरीका होता है

+0

यह स्वीकार्य उत्तर होना चाहिए। – Swaps

संबंधित मुद्दे