홈>
저는 프로그래밍 초보자입니다. Rails 앱을 만들고 있는데 이제 Heroku로 푸시하고 싶습니다. 데이터베이스를 sqlite 3에서 postresql로 변환하기 위해 Heroku의 지침 을 따랐습니다. 그런 다음 로컬 호스트에서 앱을 마이그레이션하거나 체크 아웃하려고 할 때이 오류가 발생합니다
"PG :: ConnectionBad : 치명적 : 호스트"[local] ", 사용자"keemtaker ", 데이터베이스"tuma_database_development ", SSL off"에 대한 pg_hba.conf 항목 없음
이 같은 문제에 대한 이전 답변을 확인했지만 너무 혼란스럽고 압도적입니다. 이 오류를 해결하기 위해 단계별 가이드를 얻을 수 있다면 좋을 것입니다. PostgreSQL을 문제없이 사용했습니다. 이것이 내 gemfile의 모습입니다
source 'https://rubygems.org'
ruby '2.3.4'
gem 'figaro'
gem 'jbuilder', '~> 2.0'
gem 'puma'
gem 'rails', '5.1.4'
gem 'redis'
gem 'cloudinary'
gem 'carrierwave', '~> 1.2'
gem 'rails_admin', '~> 1.2'
gem 'pg'
gem 'autoprefixer-rails'
gem 'bootstrap-sass'
gem 'jquery-rails'
gem 'font-awesome-sass'
gem 'sass-rails'
gem 'simple_form'
gem 'turbolinks', '~> 5.0.0'
gem 'coffee-rails'
gem 'uglifier'
gem 'webpacker'
gem 'devise'
gem 'ransack'
gem 'trix'
gem "letter_opener", group: :development
group :development do
gem 'web-console', '>= 3.3.0'
end
group :development, :test do
# gem 'binding_of_caller'
# gem 'better_errors'
gem 'pry-byebug'
gem 'pry-rails'
gem 'listen', '~> 3.0.5'
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
end
database.yml에 나는있다
default: &default
adapter: postgresql
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000
development:
<<: *default
database: tuma_database_development
test:
<<: *default
database: tuma_database_test
production:
<<: *default
database: tuma_database_production
- 답변 # 1
- 답변 # 2
인프라의 로컬 데이터베이스에 액세스 할 수 없으므로 Heroku의 데이터베이스 URL을 지정해야합니다. 당신의
production
를 교체database.yml
의 섹션 이것으로 :
<시간>production: url: <%= ENV["DATABASE_URL"] %> pool: 15
따라서 완전한
database.yml
다음과 같이 보일 것입니다 :
<시간>default: &default adapter: postgresql encoding: unicode pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> timeout: 5000 development: <<: *default database: tuma_database_development test: <<: *default database: tuma_database_test production: <<: *default url: <%= ENV["DATABASE_URL"] %>
출처 : Rails on Heroku 시작하기
관련 자료
- javascript - Node JS API Sequelize PostgreSQL UUID를 기본 키로 "Nan 열이 없습니다"오류를 반환합니다
- 파이썬에서 배열의 항목을 찾기 위해 인덱스 사용 오류
- javascript sinusbot postgresql \ 오류 - pq : 문자 유형에 대한 값이 너무 깁니다 (1)
- java - 오류 코드 - 1062 update를 사용하는 키 고유 데이터 필드에 대한 중복 항목 ' mysql
- 오류 - 배열에는 null이 포함되어서는 안됩니다 postgresql
- python - 오류 - django는 docker를 통해 postgresql에 연결합니다
- 치명적인 오류 (13) - xds modula-2에 프로그램 진입 점이 없습니까?
관련 질문
- "PG::UndefinedTable: ERROR: "events" 관계가 존재하지 않습니다. 모델 간의 연결을 생성할 때"
- Ruby에서 ranksack을 사용하여 3단계 연관에 정렬 asc desc를 적용하는 방법
- PostgreSQL -"라이브러리가 로드되지 않았습니다...(LoadError)" 시작 시 Rails 서버 충돌
- Rails: rake db:create:all에서 데이터베이스 생성에 대한 Postgres 권한이 거부되었습니다.
- Ruby on Rails + Postgres 마이그레이션은 모든 db:migrate의 schema.rb에서 enable_extension "pgcrypto"를 제거합니다.
- 활성 레code에서 호출할 때 PG::UndefinedFunction
- "http://rubygems.org" 소스가 있는 레일 4.2.10을 설치할 수 없습니다. 금지 오류가 발생함
- ruby : 유사성에 기반한 쿼리가 있는 텍스트 열에 가장 효율적인 Postgresql 인덱스
- Rails -임시 테이블을 만들고 운영하시겠습니까?
- 다른 모델에서 모델의 배열 변수를 어떻게 계산합니까?
이 구성에 의해 앱은 로컬 데이터베이스를 찾게됩니다.
하지만 여기에서 조언하는 구성을 참조하십시오 :
<올>포스트그레스 추가 기능 추가
제작 구성 라인을 위의 링크에 표시된 라인으로 교체
추가 기능을 설치할 때 heroku는 프로젝트에 DATABASE_URL 환경 변수를 추가합니다. Rails는이 변수를 자동으로 찾아서 선택합니다 (여기 참조)