Не удалось загрузить «active_record / connection_adapters / mysql_adapter», добавить необходимый гем адаптера в Gemfile - PullRequest
0 голосов
/ 24 марта 2019

с помощью этой команды "git push dokku master" и развертывания ruby ​​на рельсах, используя Dokku в Digital Ocean, получая эту ошибку

Could not load 'active_record/connection_adapters/mysql_adapter'. 
Make sure that the adapter in config/database.yml is valid. If you 
use an adapter other than 'mysql2', 'postgresql' or 'sqlite3' add 
the necessary adapter gem to the Gemfile.

Я добавил mysql2 в Gemfile

gem 'mysql2', '~> 0.3.18'

gemfile, прокрутите вниз:

source 'https://rubygems.org'
git_source(:github) do |repo_name|
repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
"https://github.com/#{repo_name}.git"
 end
 gem 'jquery-rails'
 gem 'rails', '~> 5.1.4'
 gem 'puma', '~> 3.7'
 gem 'sass-rails', '~> 5.0'
 gem 'uglifier', '>= 1.3.0'
 gem 'coffee-rails', '~> 4.2'
 gem 'turbolinks', '~> 5'
 gem 'jbuilder', '~> 2.5'
 group :development, :test do
   gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
   gem 'capybara', '~> 2.13'
   gem 'selenium-webdriver'
 end
group :development do
  gem 'web-console', '>= 3.3.0'
  gem 'spring'
  gem 'spring-watcher-listen', '~> 2.0.0'
end
gem 'listen', '~> 3.1.5'
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
gem 'bootstrap-sass', '~> 3.3.7'
gem 'devise', '~>4.2'
gem 'toastr-rails', '~> 1.0'
gem 'omniauth', '~> 1.6'
gem 'omniauth-facebook', '~> 4.0'
gem 'paperclip', '~>5.1.0'
gem 'aws-sdk','~> 2.8'
gem 'geocoder', '~> 1.4'
gem 'geocomplete_rails'
gem 'jquery-ui-rails', '~> 5.0'
gem 'ransack', '~> 1.7'
gem 'twilio-ruby', '~> 4.11.1'
gem 'fullcalendar-rails', '~> 3.4.0'
gem 'momentjs-rails', '~> 2.17.1'
gem 'stripe', '~> 3.0.0'
gem 'rails-assets-card', source: 'https://rails-assets.org'
gem 'omniauth-stripe-connect', '~> 2.10.0'
gem 'chartkick', '~> 2.2.4'
gem 'mysql2', '~> 0.3.18'
gem 'yaml_db'
gem 'vider'
gem 'nokogiri', '1.8.3'
gem 'rails_12factor'

У меня есть database.yml

production:
  adapter: mysql2
  url: <%= ENV['DATABASE_URL'] %> 
  encoding: unicode
  pool: 5

Я выполнил эту команду

dokku plugin:install https://github.com/dokku/dokku-mysql.git mysql

Пакет v равен 1.16.3 Я выполнил следующие команды

bundle update
bundle install

Ожидаемый результат - заставить работать следующую командную строку, что приведет к успешной передаче на сервер

git push dokku master

Ответы [ 3 ]

0 голосов
/ 01 апреля 2019

Кажется, файл database.yml не в нужном месте. При развертывании проекта, возможно, вам следует поместить database.yml вручную, поскольку этот файл не находится в репо.

0 голосов
/ 11 апреля 2019

обновление sql до gem 'mysql2', '~> 0.4.10' исправило проблему

0 голосов
/ 24 марта 2019

Пытались ли вы запустить с префиксом sudo?

sudo dokku plugin:install https://github.com/dokku/dokku-mysql.git mysql

Получаете ли вы какие-либо ошибки?Также вы должны установить кодировку следующим образом:

production:
  adapter: mysql2
  encoding: utf8
  url: <%= ENV['DATABASE_URL'] %> 
  pool: 5

Вам также необходимо убедиться, что вы установили переменную окружения DATABASE_URL

dokku config:set DATABASE_URL=<some-db-url-here>

Обновление

Чтение вашей ошибкисообщение, возможно, в Gemfile вы можете попробовать закомментировать

gem 'mysql2', '~> 0.3.18'

или попытаться, возможно, переместить его в группу разработки?Просто попробуйте, не уверен.

...