Tôi đã thay đổi database.yml của mình để sử dụng cơ sở dữ liệu sqlite3 trong thử nghiệm và phát triển và postgresql trong sản xuất. Ứng dụng của tôi chạy tốt trong sản xuất nhưng khi tôi khởi động thử nghiệm hoặc phát triển environements tôi có lỗi này:không thể tải 'rails.application.database_configuration' phương thức chưa xác định '[]' cho nil: NilClass
Cannot load 'Rails.application.database_configuration':
undefined method'[]' for nil:NilClass (NoMethoError)
database.yml của tôi:
# SQLite version 3.x
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
#
default: &default
adapter: sqlite3
pool: 5
timeout: 5000
development:
<<: *default
database: db/development.sqlite3
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: db/test.sqlite3
production:
pool: 5
timeout: 5000
encoding: utf8
adapter: postgresql
host: <%= Rails.application.secrets[:database][:host]%>
database: <%= Rails.application.secrets[:database][:name]%>
username: <%= Rails.application.secrets[:database][:username]%>
password: <%= Rails.application.secrets[:database][:password]%>
nhờ đưa tôi vào đường ray tốt, nguyên nhân là nút mất tích trong secrets.yml – scauglog
như vậy .. nó nắm để thêm một 'database' phần cho 'development' và' môi trường test' trong' secrets.yml'. đúng? –
Tôi đang sử dụng biến 'ENV' cho kết nối cơ sở dữ liệu và tôi đã đặt các cài đặt của mình bên trong' secrets.yml' .. tuy nhiên khi chạy 'rails s' và cố gắng truy cập ứng dụng đường ray, tôi nhận được lỗi này' Truy cập bị từ chối cho người dùng 'root' @ 'localhost' (sử dụng mật khẩu: NO) '.. Bất kỳ ý tưởng nào? – Lykos