मैं Django में एक डेटाबेस पुनर्स्थापित करने के लिए कोशिश कर रहा हूँ की रीसेट कर सकते हैं नहीं, का उपयोग करते हुए:डाटाबेस मुसीबत: क्योंकि निर्भरता
python manage.py reset app
लेकिन प्राप्त निम्न त्रुटि:
Error: Error: app couldn't be reset. Possible reasons:
* The database isn't running or isn't configured correctly.
* At least one of the database tables doesn't exist.
* The SQL was invalid.
Hint: Look at the output of 'django-admin.py sqlreset app'. That's the SQL this command wasn't able to run.
The full error: cannot drop table app_record because other objects depend on it
HINT: Use DROP ... CASCADE to drop the dependent objects too.
यह वह जगह है क्या मेरी models.py फ़ाइल लगता है:
class Record(models.Model):
name = models.CharField(max_length=50, db_index=True)
year = models.IntegerField(blank=True, null=True)
def __unicode__(self):
return self.name
class Class(models.Model):
record = models.ForeignKey(Record)
def __unicode__(self):
return self.id
मुझे लगता है कि मैं ड्रॉप ... एसक्यूएल कि हट जाता है और आरईसी में CASCADE आदेश का उपयोग करने की जरूरत है पाने के डेटाबेस (django-admin.py का आउटपुट) को रीसेट करता है।
लेकिन मैं सीधे SQL.py से उस SQL को कैसे संपादित कर सकता हूं?
अद्यतन
ठीक है, मैं समझ कैसे, मैन्युअल रूप से तालिकाओं को हटाने के लिए (डेटाबेस postgres है) इसे यहाँ एक ही समस्या के साथ किसी के लिए भी उल्लेख किया है:
python manage.py dbshell
# drop table app_record cascade;
# \q
python manage.py reset app
चाहेंगे अभी भी यह जानना पसंद है कि किसी के पास ऐसा करने का बेहतर तरीका है, हालांकि :)
आप इसे पाने के लिए क्या कमांड टाइप कर रहे हैं? 'python manage.py रीसेट ऐप '? या आप विशेष तालिका को रीसेट करने की कोशिश कर रहे हैं? –
क्षमा करें - हाँ, "python manage.py रीसेट ऐप"। – Richard
एक साधारण समाधान केवल डीआरओपी का उपयोग करने के लिए होगा ... CASCADE आदेश मैन्युअल रूप से, फिर डेटाबेस को पुन: बनाएँ ... क्या कोई मुझे ऐसा करने का उदाहरण दे सकता है? – Richard