2013-05-05 2 views
4

장고 앱에서 스크립트를 실행하려고 할 때 가져 오기 오류가 발생합니다.ImportError : 설정을 가져올 수 없습니다. 그것은 경로에 있습니까?

설정 파일과 관련이 있습니다.

오류 :

File "bookd/get_data.py", line 10, in <module> 
    from models import UserProfile 
    File "/home/hiccup/DataProjects/goodread/bookda/bookd/models.py", line 3, in <module> 
    from django.db import models 
    File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 14, in <module> 
    if not settings.DATABASES: 
    File "/usr/local/lib/python2.7/dist-packages/django/utils/functional.py", line 276, in __getattr__ 
    self._setup() 
    File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 42, in _setup 
    self._wrapped = Settings(settings_module) 
    File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 89, in __init__ 
    raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e)) 
ImportError: Could not import settings 'bookda.settings' (Is it on sys.path?): No module named bookda.settings 

나는 그것의 아주 기본적인 오류 알고 답변을 해결하기 위해이 있었다 그러나 나는 상관없이 나는의 경로를 추가하려고 어느 방법을 해결하기 위해 단지 수 아니에요 설정이 작동합니다. 그리고 내 시스템에있는 다른 django 응용 프로그램이 완벽하게 작동한다는 다소 실망 스럽습니다.

계층 구조 다음 script.py을 실행하는 동안

bookda/settings.py 
bookda/books/script.py 

가 나는 오류가 발생합니다.

+0

당신은 아마 언급해야한다 계층. –

+0

나는 계층 구조를 언급했다. – Hick

+0

또한 bookda (및 bookda/books)에는'__init __. py' 파일이 있어야합니다. –

답변

3

settings.py에 구문 오류 또는 실행 불가능한 다른 오류가있을 수 있습니다. 어떤 경우에는 가져 오기 오류가 발생합니다.

import pdb;pdb.set_trace()을 파일에 넣으면 디버깅 할 수 있습니다. 디버거에 들어 가지 않으면 파이썬이 정말로 파일을 찾지 못했습니다.

6

Django 모델 [s]을 사용하는 사용자 정의 스크립트를 작성하려는 경우 장고가 프로젝트 패키지를 찾을 수 있어야합니다. ... 스크립트 get_data.py의 상단에

import sys 

sys.path.append('/home/hiccup/DataProjects/goodread') 

을이 넣어 ... 다음은 bookda 모듈을 가져올 수 있어야합니다.

또한 설정 파일이 어디있는 경우에 당신이 필요합니다, 장고에게해야 할 수도 있습니다

...

import sys 
import os 

sys.path.append('/home/hiccup/DataProjects/goodread') 
os.environ['DJANGO_SETTINGS_MODULE'] = 'bookda.settings' 

# Now we can import Django stuff 
from models import UserProfile 
... 
당신의 bookda/settings.py 파일이 파일에 있습니다
+0

이번에는 오류가 다음으로 변경되었습니다. ImportError : 환경 변수 DJANGO_SETTINGS_MODULE이 정의되지 않았기 때문에 설정을 가져올 수 없습니다. – Hick

+0

@Hick 업데이트 된 답변보기. – Aya

+0

좋습니다! 정확히 어디에 코드를 넣어야합니까? 내 get_data.py 스크립트에서 업데이트 된 답변을 사용한 후에도 여전히 동일한 오류가 발생합니다. – Hick

관련 문제