Я создаю приложение (на рельсах 6.0.1) с помощью Apartment gem & Devise, но не могу понять, как заставить его работать с MySQL.
Я сделал всю свою конфигурацию и прочее, создал свою модель разработки пользователя и т. Д., Но когда я пытаюсь rails db:migrate
, возникает ошибка:
Migrating tenant
Error while connecting to tenant : Mysql2::Error: No database selected
Это означает, что я неправильно настроил квартиру для работы с моей базой данных Mysql, верно? Я не смог найти никакой информации (которую я могу понять с точки зрения новичка) о том, как правильно ее подключить. Мой database.yml
имеет следующее:
// database.yml
default: &default
adapter: mysql2
encoding: utf8mb4
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username: myusername
password: mypassword
socket: /tmp/mysql.sock
(...)
Обратите внимание, что у меня есть хорошее имя пользователя и пароль в моем приложении rails :) Все работало нормально, пока я не попытался создать мультиарендный материал. Это означает, что проблема может быть связана с моим файлом config/initializers/apartment.rb
?
Вот как это выглядит сейчас
// config/initializers/apartment.rb
require 'apartment/elevators/subdomain'
Apartment.configure do |config|
config.excluded_models = %w[User]
config.tenant_names = -> { User.pluck :subdomain }
config.use_schemas = true
end
Rails.application.config.middleware.use Apartment::Elevators::Subdomain
Редактировать: я использую ветку разработки из квартиры. Может быть, это проблема с Rails 6?
// Gemfile
gem 'apartment', github: 'influitive/apartment', branch: 'development'