2011-06-30 13 views
7

मैं डेटाबेस तालिका से डेटा का चयन करना चाहता हूं जो मेरे Django प्रोजेक्ट का हिस्सा नहीं है। मैंने सेटिंग्स फ़ाइल में डेटाबेस कनेक्शन जानकारी जोड़ा और मैं डेटा खींचने के लिए इसके खिलाफ कच्चे एसक्यूएल प्रश्न कर सकता हूं। हालांकि, मैं उस तालिका के लिए एक मॉडल बनाना चाहता हूं और डेटा तक पहुंचने में सक्षम हूं क्योंकि मैं किसी अन्य Django मॉडल डेटा का उपयोग करूंगा।Django: विभिन्न डेटाबेस से डेटा प्राप्त करना

क्या यह संभव है? मुझे उस पर कोई दस्तावेज मिल सकता है।

उत्तर

10

Django: Multiple Databases पेज इस विषय पर अच्छा में जानकारी शामिल है क्या करना है। Settings.py में अपने डेटाबेस को कॉन्फ़िगर करने के बाद, आप जिस डेटाबेस को क्वेरी करना चाहते हैं उसे निर्दिष्ट करने के लिए आप .using() का उपयोग कर सकते हैं। दस्तावेज़ से

उदाहरण:

>>> # This will run on the 'default' database. 
>>> Author.objects.all() 

>>> # So will this. 
>>> Author.objects.using('default').all() 

>>> # This will run on the 'other' database. 
>>> Author.objects.using('other').all() 
+0

लेखक तो क्या है? Model.py में लेखक मॉडल परिभाषित नहीं किया गया है। इस मामले में – user1881957

+1

'लेखक' किसी भी ऑब्जेक्ट के लिए प्लेसहोल्डर है जिसे आप पूछना चाहते हैं। मैंने बस लिंक किए गए पेज पर दस्तावेज़ से उदाहरण की प्रतिलिपि बनाई। आप किसी ऑब्जेक्ट का उपयोग कर सकते हैं। –

+0

क्या आप मुझे बता सकते हैं कि इस तरह कच्चे प्रश्नों को कैसे निष्पादित किया जाए? पूर्व: Author.objects.using ('अन्य') कच्चे ("तालिका 1 से चुनें *) –

3

यकीन है, तो आप सिर्फ

SomeObject.objects.using('database_name').all() 

उपयोग करने के लिए आपके प्रश्नों

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