यदि आपको डेटा की परवाह नहीं है:
सबसे अच्छा तरीका डेटाबेस को गिराना और syncdb
फिर से चलाना होगा । या आप चला सकते हैं:
Django के लिए = = 1.5
python manage.py flush
Django के लिए <1.5
python manage.py reset appname
(आप --no-input
इंटरएक्टिव प्रॉम्प्ट को छोड़ने के लिए इसके लिए कमांड के अंत में जोड़ सकते हैं ।)
यदि आप डेटा की परवाह करते हैं:
डॉक्स से:
syncdb केवल उन मॉडलों के लिए तालिकाओं का निर्माण करेगा जिन्हें अभी तक स्थापित नहीं किया गया है। यह स्थापना के बाद एक मॉडल वर्ग में किए गए परिवर्तनों से मेल खाने के लिए कभी-कभी बयान जारी नहीं करेगा। मॉडल कक्षाओं और डेटाबेस स्कीमा में परिवर्तन अक्सर अस्पष्टता के कुछ रूप को शामिल करते हैं और उन मामलों में, Django को बनाने के लिए सही परिवर्तनों का अनुमान लगाना होगा। एक जोखिम है कि महत्वपूर्ण डेटा प्रक्रिया में खो जाएगा।
यदि आपने किसी मॉडल में परिवर्तन किया है और डेटाबेस की तालिकाओं को मिलान करने के लिए बदलना चाहते हैं, तो नई SQL संरचना को प्रदर्शित करने के लिए sql कमांड का उपयोग करें और परिवर्तनों को काम करने के लिए अपने मौजूदा टेबल स्कीमा से तुलना करें।
https://docs.djangoproject.com/en/dev/ref/django-admin/
संदर्भ: FAQ - https://docs.djangoproject.com/en/dev/faq/models/#if-i-make-changes-to-a-model-how-do-i-update-the-database
लोग दक्षिण ( http://south.aeracode.org/docs/about.html#key-features ) की भी सलाह देते हैं , लेकिन मैंने इसकी कोशिश नहीं की है।