मैं यहाँ एक ही समस्या के लिए मिल गया है, लेकिन एक अलग कारण के लिए:
Class.objects.get(id=1)
इस कोड को ऊपर उठाने गया था एक आयात त्रुटि अपवाद। get()
विधि के लिए ट्रैस बैक की
Class.objects.all()
पूंछ:
File "django/db/models/loading.py", line 197, in get_models
self._populate()
File "django/db/models/loading.py", line 72, in _populate
self.load_app(app_name, True)
File "django/db/models/loading.py", line 94, in load_app
app_module = import_module(app_name)
File "django/utils/importlib.py", line 35, in import_module
__import__(name)
ImportError: No module named myapp
Django के loading.py
अंदर कोड पढ़ना, मैं क्या मुझे भ्रामक था कि कोड के नीचे ठीक निष्पादित और एक परिणाम के सेट की उम्मीद के रूप में लौटा था इस निष्कर्ष पर आया कि मेरे settings.py
में मेरे ऐप का एक बुरा रास्ता था जिसमें मेरी Class
मॉडल परिभाषा शामिल है। मुझे बस इतना करना था कि ऐप के पथ और get()
विधि को ठीक किया गया था।
यहाँ है मेरे को सही पथ के साथ settings.py
:
INSTALLED_APPS = (
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
# ...
'mywebproject.myapp',
)
क्योंकि मैं एक स्टैंडअलोन के रूप में Django के ORM उपयोग कर रहा हूँ सभी भ्रम उत्पन्न कर दिया गया था, इसलिए नाम स्थान कि प्रतिबिंबित करने के लिए किया था।
स्रोत
2013-09-28 17:55:52
एफवाईआई, 'पीके' किसी भी मॉडल के लिए प्राथमिक कुंजी को संदर्भित करने का पसंदीदा तरीका है। 'Id' फ़ील्ड केवल तभी उत्पन्न होता है जब मॉडल लेखक विशेष रूप से प्राथमिक कुंजी निर्दिष्ट नहीं करता है। अगर लेखक * ने प्राथमिक कुंजी फ़ील्ड निर्दिष्ट की है जिसे 'आईडी' नाम नहीं दिया गया है, तो वहां' आईडी' फ़ील्ड नहीं होगा। –
एफआईआई, 'आईडी' एक अंतर्निर्मित फ़ंक्शन में जो किसी ऑब्जेक्ट की पहचान देता है। 'आईडी' द्वारा चीजों को संदर्भित करने वाले अधिकांश मामलों में सही चीज़ होगी। 'Class.objects.get (id = this_object_id) 'काम। लेकिन मुझे लगता है कि यह अनुमान लगाने के लिए कुछ है। – Tom