2012-07-23 3 views
2

Heroku 및 Django/Python을 처음 사용했습니다. 나는 겪고있는 문제에 대한 해답을 찾고 싶었다. Heroku Dev Center의 Getting Started 튜토리얼을 따라 왔습니다. https://devcenter.heroku.com/articles/django"python manage.py syncdb"를 로컬에서 실행할 때 오류가 있지만 Heroku를 통해 동일한 명령을 실행할 때 오류가 발생하지 않습니다.

명령을 실행하고 앱 코드를 Heroku로 푸시하면 모든 것이 올바르게 작동합니다. 예를 들어, CLI 명령 "heroku python manage.py syncdb run"을 실행하면 모든 것이 오류없이 예상대로 작동합니다. 내가 다시 가서 내 settings.py 파일을 확인

Scotts-MacBook-Pro:bonavina scottklieberman$ python manage.py syncdb 
    Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    ... 
    File "/Library/Python/2.7/site- packages/django/db/backends/postgresql_psycopg2/base.py", line 162, in _cursor 
    raise ImproperlyConfigured("You need to specify NAME in your Django settings file.") 
    django.core.exceptions.ImproperlyConfigured: You need to specify NAME in your Django settings file. 

: 나는 로컬 "파이썬 manage.py의 syncdb를"같은 명령을 실행하려고 할 때, 나는 다음과 같은 출력과 오류를 얻고있다. Heroku 튜토리얼에 따라 dj_database_url을 사용하고 있기 때문에 설정 파일에 NAME을 지정하지 않았습니다. 내가 Heroku에서 성공적으로 컴파일하는 동안 왜 이것이 로컬에서 실패하고 있는지 궁금합니다 (이름이 필요한 이유). 어떤 도움이라도 대단히 감사하겠습니다. 문제를 진단하는 데 필요한 추가 정보가 있으면 알려주십시오.

최저

, 스콧

답변

0

dj_database_url는 Heroku가 설정되어 있지만 (당신이 자신을 설정하지 않는 한) 아마 해당 지역의 환경에 설정되어 있지 않은 환경 변수 DATABASE_URL의 값을 사용합니다.

+0

로컬 환경에서 설정하려면 프로젝트 홈에 .env라는 파일을 작성하고 DATABASE_URL = postgres : /// dbname을 추가하십시오. 여기서 dbname은 데이터베이스의 이름입니다. 그런 다음 "foreman run python manage.py syncdb"를 통해 syncdb를 실행하여 환경 변수를로드합니다. – sean

관련 문제