2015-02-12 11 views
8

द्वारा संदर्भित मॉडल के लिए लुकअप विफल रहा है मैं Django के साथ एक नया मॉडल बनाने की कोशिश कर रहा हूं, लेकिन मैं Lookup failed for model referenced by field help.HelpDefinition.org: account.Organization त्रुटि में चल रहा हूं। Organization आयात किया गया है। आप नीचे मॉडल देख सकते हैं।Django 1.7.3 - क्षेत्र

models.py

org = models.ForeignKey(Organization, unique=True) 
help_type = models.CharField(max_length=255, choices=HELP_CHOICES) 
help_content = models.TextField(blank=True) 

यह मॉडल सफलतापूर्वक पहले से माइग्रेट किया गया। मैंने पोस्टग्रेज़ में psql के माध्यम से तालिका को छोड़ दिया ताकि इसे फिर से बनाया जा सके।

उत्तर

17

ऐसा तब होता है जब आप रिश्तों में लक्षित वस्तुओं को बदलते हैं। भले ही उनके पास समान नाम और फ़ील्ड हों, वे एक ही वस्तु नहीं हैं। मेरे पास एक ही समस्या थी और फ़ोल्डर से सभी पिछले माइग्रेशन को हटा दिया गया था।

+1

यह अजीब लगता है, लेकिन वास्तव में ऐसा करने का तरीका है। मॉडल नामों में संशोधन कुछ ऐसा लगता है जो Django माइग्रेशन अभी तक समर्थन नहीं करता है (या संस्करण 1.7.3 में अभी तक समर्थन नहीं किया है)। –

+0

यदि आपको किसी मॉडल के नाम को संशोधित करने की आवश्यकता है, तो आप एक खाली माइग्रेशन बना सकते हैं और ['RenameModel'] का उपयोग कर सकते हैं (https://docs.djangoproject.com/en/1.8/ref/migration-operations/#renamemodel) कक्षा । – warownia1

2

आप ऑब्जेक्ट के ऐप से अंतिम माइग्रेशन माइग्रेशन के लिए निर्भरता के रूप में भी जोड़ सकते हैं। उसने मेरे लिए चाल बनाई।

class Migration(migrations.Migration): 

dependencies = [ 
    (<app>, <last_migration_filename>), 
... 
+0

मैंने निर्भरता में एक और ऐप माइग्रेशन जोड़कर "क्षेत्र द्वारा संदर्भित मॉडल के लिए लुकअप विफल ..." त्रुटि भी हल की। – baxeico

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