2015-01-21 1 views
0

누군가가 connection.py 파일에 하드 코딩 된 IP 주소를 제거하는 방법을 알려줄 수 있는가?
settings.py에서 데이터베이스 연결 설정 환경 설정에 대한 settings_local.py와 같은 다른 파일을 settings.py에 포함시키는 것이 일반적인 방법입니다.
settings_local.py가 없습니다. 이 파일을 숨기거나 존재하지 않을 수 있습니까?
존재하지 않는 경우 하드 코딩 된 내용을 제거하기 위해 만들 수 있습니다.connection.py 파일에서 하드 코딩 된 IP 주소를 제거하는 방법. (나는 매우 새로운 것이다.)

`/src/mongoengine/mongoengine/connection.py", line 126, in get_connection 
    raise ConnectionError("Cannot connect to database %s :\n%s" % (alias, e)) 
    mongoengine.connection.ConnectionError: Cannot connect to database default : 
    enter code here`could not connect to ip-10-171-58-44.ec2.internal:27017: timed out 
+0

Django에는 하드 코딩 된 IP가 없습니다. – abstractpaper

+0

프로젝트의 루트 폴더로 가서'grep -r. -e ip-10-171-58-44.ec2.internal' – abstractpaper

답변

1

기본적으로 mongoengine은 localhost에 연결을 시도합니다. 거기에 mongo 인스턴스를 찾는 것이 아니라 오류의 원인이됩니다.

ip-10-141-58-44.ec2.internal은 서버의 호스트 이름입니다. 그것은 하드 코딩되지 않습니다.

같은 라인이 있어야한다, 당신의 settings.py 파일에서 보라 :

'somenamehere이'데이터베이스의 이름입니다
connect('somenamehere') 

; 그러한 행이 존재하면 localhost의 mongo에 연결하려고합니다. 로컬 호스트에

  1. 설정 몽고 :

    이제 두 가지 선택이있다.

  2. settings.py을 업데이트하고 mongo 데이터베이스 설치 위치를 지정하십시오. 추가 매개 변수 host, connect('somenamehere', host='10.10.10.1')을 전달하여이 작업을 수행 할 수 있습니다. 자세한 내용은 documentation을 참조하십시오.