2015-04-09 7 views
5

Django 1.7 से 1.8 तक किसी प्रोजेक्ट को माइग्रेट करने का प्रयास कर रहा है। कोड त्रुटियों के साथ कुश्ती के बाद, मैं माइग्रेशन चलाने के लिए सक्षम हूं। हालांकि, जब मैं माइग्रेट करने का प्रयास करता हूं, तो मुझे त्रुटि दी जाती है "'कोई नहीं टाइप' ऑब्जेक्ट में कोई विशेषता नहीं है '_meta'"Django 1.8 माइग्रेशन - "noneType" ऑब्जेक्ट में कोई विशेषता नहीं है "_meta"

मेरे किसी भी ऐप्स पर ट्रेसबैक में कोई संदर्भ नहीं है, इसलिए मुझे बिल्कुल ठीक नहीं है बग की तलाश के बारे में जाने के लिए (और साथ ही जो कोड के रूप में यहां शामिल करने के लिए तो मैं मेरी मदद करने की कोशिश कर उन लोगों के लिए अधिक सहायक हो सकता है)

यहाँ ट्रैस बैक का पूरा पाठ है

(venv)[email protected]:~/Projects/sparrow1/NJ$ ./manage.py makemigrations 
No changes detected 
(venv)[email protected]:~/Projects/sparrow1/NJ$ ./manage.py migrate 
Operations to perform: 
    Synchronize unmigrated apps: staticfiles, editor, djcelery, messages, getty, kombu_transport_django, debug_toolbar, utils, locking, petro, tokenapi, grappelli, django_extensions, selectable 
    Apply all migrations: adops, taxonomy, issues, editorial, contenttypes, authors, auth, comms, membership, sessions, bento, urlalias, accounts, breaking_news, easy_thumbnails, images, admin, pages, documents, events 
Synchronizing apps without migrations: 
    Creating tables... 
    Running deferred SQL... 
    Installing custom SQL... 
Running migrations: 
    Rendering model states...Traceback (most recent call last): 
    File "./manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line 
    utility.execute() 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/core/management/__init__.py", line 330, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/core/management/base.py", line 390, in run_from_argv 
    self.execute(*args, **cmd_options) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/core/management/base.py", line 441, in execute 
    output = self.handle(*args, **options) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/core/management/commands/migrate.py", line 221, in handle 
    executor.migrate(targets, plan, fake=fake, fake_initial=fake_initial) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/db/migrations/executor.py", line 104, in migrate 
    state = migration.mutate_state(state, preserve=do_run) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/db/migrations/migration.py", line 83, in mutate_state 
    operation.state_forwards(self.app_label, new_state) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/db/migrations/operations/fields.py", line 51, in state_forwards 
    state.reload_model(app_label, self.model_name_lower) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/db/migrations/state.py", line 97, in reload_model 
    related_models = get_related_models_recursive(old_model) 
    File "/home/rtownley/Projects/sparrow1/venv/lib/python3.4/site-packages/django/db/migrations/state.py", line 57, in get_related_models_recursive 
    rel_app_label, rel_model_name = rel_mod._meta.app_label, rel_mod._meta.model_name 
AttributeError: 'NoneType' object has no attribute '_meta' 

अन्य टुकड़े कि संभावित रूप से खेल सकते हैं: - मेरे पास एक कस्टम हैंडलर है जो सहेजने की घटना के लिए सुनता है, डेटा को क्रमबद्ध करता है, और मोंग में एक समान वस्तु बनाता है ओ - पाइथन 3.4

त्रुटि के शिकार के बारे में कहां जाना है इस पर कोई विचार है? धन्यवाद, और खेद है कि मैं अभी तक और कोड प्रदान नहीं कर सकता!

+0

माइग्रेशन के लिए कोड दिखा रहा है भी एक लंबा रास्ता तय करेगा। – Makoto

+3

ऐसा लगता है कि शायद आपके मॉडल में से एक मॉडल से संबंधित है जो मौजूद नहीं है? – meiamsome

+0

उघ्हह यह था। गिट विलय के दौरान एक मॉडल जिसे मैंने हटा दिया था उसे फिर से जोड़ा गया था। मुझे सही रास्ते पर स्थापित करने के लिए धन्यवाद! –

उत्तर

3

मुझे धन्यवाद, मैंने यह पता लगाया: मेरे मॉडल में से एक मॉडल के लिए विदेशीकी संबंध था जो अब अस्तित्व में नहीं था (मैंने इसे हटा दिया था, और एक गिट मर्ज ने इसे वापस जोड़ा था)। सभी को मदद के लिए धन्यवाद!

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