2009-10-29 11 views
8

पर एडाप्टर करें मेरे पास डेटा के साथ एक पोस्टग्रेस्क्ल डेटाबेस है। मैं उस डेटाबेस के साथ एक django ऐप बनाना चाहता हूँ।किसी मौजूदा डेटाबेस को django ऐप

मैं django मॉडल और/या विचारों को टेबल कैसे आयात कर सकता हूं?

उत्तर

16

आपके मौजूदा डेटाबेस से मॉडल उत्पन्न करने के लिए manage.py inspectdb नामक एक उपयोगिता है। यह बहुत अच्छी तरह से काम करता है।

$ python manage.py inspectdb > models.py 
+2

हाँ, Django के 'प्रबंधन inspectdb' आप क्या खोज रहे हैं होना चाहिए। – Michael

3

अपने डेटाबेस बहुत सरल नहीं है, तो - या बहुत अच्छी तरह से तैयार किया गया है - आप इसे Django के साथ एक गरीब फिट मिल जाएगा।

जबकि reverse engineering अच्छी तरह से काम करता है, तो आप पाते हैं कि मूल डेटाबेस डिज़ाइन त्रुटिपूर्ण था और आपके पास बहुत सारे बेकार कामकाज हैं।

प्रश्न "विरासत सॉफ्टवेयर" में से एक है जो पुराने डेटा मॉडल के साथ काम करता है।

मैं सुझाव देता हूं कि आप निम्न कार्य करें।

  1. Django का उपयोग कर सही डेटा मॉडल डिज़ाइन करें।

  2. आपके पास जो कुछ भी है उसके लिए सही मॉडल को मानचित्र करें।

  3. एक रूपांतरण स्क्रिप्ट लिखें जो गैर-डीजेगो-अनुकूल से बेहतर मॉडल में डेटा माइग्रेट करने के लिए सरल, सीधा एसक्यूएल और Django ORM का उपयोग करती है।

    • यदि आपके पास विरासत सॉफ्टवेयर है, तो आपको उचित डेटा आंदोलन शेड्यूल करना होगा।

    • यदि आपके पास कोई विरासत सॉफ्टवेयर नहीं है, तो आप एक बार इस रूपांतरण को चलाएंगे।

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