2012-11-26 9 views
7

का उपयोग कर एक क्वेरीसेट को जेसन में कनवर्ट करें मेरे पास मॉडल के लिए एक स्वादिष्ट संसाधन है। मेरे पास एक ऐसा दृश्य भी है जो एक क्वेरीसेट के साथ आता है जिसे क्रमबद्ध करने और क्लाइंट को भेजने की आवश्यकता होती है। मैं tastypie संसाधन को क्वेरीसेट के क्रमिकरण और निर्जलीकरण को संभालने का तरीका ढूंढ रहा हूं।tastypie संसाधन

मुझे लगता है कि मैं एक समूह बनाने की सुविधा

[Resource.build_bundle(self, obj=None, data=None, request=None)][1] 

को एक वस्तु पारित कर सकते हैं और फिर

[Resource.full_dehydrate(self, bundle)][2] 

के बंडल गुजरती हैं और अंत में

[Resource.serialize(self, request, data, format, options=None)][3] 
पर

फोन निर्जलित डेटा।

लेकिन मैं पूर्ण क्वेरीसेट को जेसन में परिवर्तित करना चाहता हूं, न केवल एक वस्तु। शायद मुझे पूरी क्वेरीसेट को बंडल में बदलने का एक तरीका है।

किसी भी मदद की सराहना की जाती है!

उत्तर

10

यह मुझे भी परेशान कर रहा था, लेकिन मुझे लगता है कि मुझे गिटूब पर स्वादिष्ट कोड के माध्यम से देखने के बाद जवाब मिला।

यह बंडलों का एक समूह बना देगा।

bundles = [Resource.build_bundle(obj=q, request=request) for q in Queryset] 

यह निर्जलीकरण करेगा।

data = [Resource.full_dehydrate(bundle) for bundle in bundles] 

यह क्रमबद्धता करेगा।

Resource.serialize(None, data, 'application/json'),