문제

로컬로 원격 연결을 설정하고 Heroku로 밀어야합니다. 내가 헤로쿠로 밀었을 때 나는 다음과 같이 말하는 오류를 얻었습니다.

RemotedBname은 구성되지 않았습니다.

Heroku는 자신의 config.yml 파일을 사용한다고 가정합니다.

도움이 되었습니까?

해결책

이것을 알아 냈습니다. Heroku의 원격 데이터베이스에 연결하는 사람은 다음을 볼 수 있습니다.

Heroku는 Database.yml 파일을 자체로 대체하여 귀하의 모든 것을 덮어 씁니다.

이것을 둘러 보려면 :

  • 구성 폴더에서 새 파일을 만들고 aiting.yml 이름을 지정합니다.
  • 이 파일에서 연결 문자열을 설정하십시오.
  • 이니셜 라이저 폴더에서 새 파일을 만들었습니다. 이 파일에서는이 코드 라인을 작성합니다.

    remote_db = yaml.load_file ( "#{rails_root} /config/yournewfilehere.yml"))

  • 이 코드 라인을 사용하여 원격 모델에서 연결을 설정하십시오.

    stave_connection remote_db [ '여기 yml 파일에서 연결 문자열을 명명 한 내용']]

다른 팁

Heroku에서 작업 할 때 데이터베이스 구성이 어떻게 수행되는지 보여 드리겠습니다. 나는 이것이 문서에서 약간 모호 할 것이라고 생각합니다. 어떤 사람들은 혼란스러워합니다. 콘솔을 활용하자 :

zero:~/Projects/crantastic $ heroku console
Ruby console for crantastic.heroku.com
>> puts File.read(Rails.configuration.database_configuration_file)
---
production:
  encoding: unicode
  adapter: postgresql
  username: something_random
  port: 5432
  host: somewhere.at.heroku
  database: something_random
  password: something_random

=> nil
>>

Heroku는 실제로 사이트를 서버로 푸시 할 때 Apps Database.yml을 대체합니다. 데이터는 로컬에서 사용하는 내용에 관계없이 멋진 PostgreSQL 서버 중 하나에 저장됩니다. 즉, Database.yML에 대해 전혀 생각할 필요가 없음을 의미합니다 (자연스럽게 개발 자료 제외). 탭은 모든 것이 DB의 비공식인지 확인합니다. 최신 개발 DB를 Heroku로 밀고 싶다면 Heroku DB : Push를 실행하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top