I followed the official tutorial.Mongoid funktioniert nicht mit Rails 4
Ich habe sqlite3 in meinem Gemfile sowie die folgenden Zeilen auf Kommentar:
gem 'mongoid', '~> 4', github: 'mongoid/mongoid'
gem 'bson_ext'
aber ich halte Empfang der Specified 'sqlite3' for database adapter, but the gem is not loaded. Add gem "sqlite3" to your Gemfile.
Grund, dass die database.yml noch SQLite Listen zu sein scheint als die Datenbank. Wie soll ich Rails dazu bringen, das generierte mongoid.yml zu verwenden? database.yml Inhalt mit mongoid.yml Ersetzen scheint nicht den Trick zu tun - ich bekomme die
ActiveRecord::AdapterNotSpecified: database configuration does not specify adapter
Fehler.
Ist es nicht kompatibel mit Rails 4 oder fehlt mir etwas einfaches?
Edit: Ich denke, ich werde wärmer. Ich habe den Adapter als 'Mongoid' hinzugefügt. Hier ist der Inhalt meiner database.yml jetzt:
development:
adapter: 'mongoid'
# Configure available database sessions. (required)
sessions:
# Defines the default session. (required)
default:
# Defines the name of the default database that Mongoid can connect to.
# (required).
database: xboxie
# Provides the hosts the default session can connect to. Must be an array
# of host:port pairs. (required)
hosts:
- localhost:27017
options:
# Change whether the session persists in safe mode by default.
# (default: false)
# safe: false
# Change the default consistency model to :eventual or :strong.
# :eventual will send reads to secondaries, :strong sends everything
# to master. (default: :eventual)
# consistency: :eventual
# How many times Moped should attempt to retry an operation after
# failure. (default: 30)
# max_retries: 30
# The time in seconds that Moped should wait before retrying an
# operation on failure. (default: 1)
# retry_interval: 1
# Configure Mongoid specific options. (optional)
options:
#
test:
sessions:
default:
database: xboxie_test
hosts:
- localhost:27017
options:
consistency: :strong
# In the test environment we lower the retries and retry interval to
# low amounts for fast failures.
max_retries: 1
retry_interval: 0
# # SQLite version 3.x
# # gem install sqlite3
# #
# # Ensure the SQLite 3 gem is defined in your Gemfile
# # gem 'sqlite3'
# development:
# adapter: sqlite3
# database: db/development.sqlite3
# pool: 5
# timeout: 5000
# # 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:
# adapter: sqlite3
# database: db/test.sqlite3
# pool: 5
# timeout: 5000
# production:
# adapter: sqlite3
# database: db/production.sqlite3
# pool: 5
# timeout: 5000
Erzeugt den Fehler:
LoadError: Could not load 'active_record/connection_adapters/mongoid_adapter'. Make sure that the adapter in config/database.yml is valid. If you use an adapter other than 'mysql', 'mysql2', 'postgresql' or 'sqlite3' add the necessary adapter gem to the Gemfile.
Ja, ich habe. Allerdings, wenn ich es zu Mongoid ändere, habe ich eine ganze mongoid.yml Konfigurationsdatei und eine Datenbank.yml Konfigurationsdatei und ich bin mir nicht sicher, wie man die zwei –
Am Ende des Tutorials, das Sie verknüpften, sprachen sie darüber, wie Datenbank.yml zu entfernen, nicht wahr? – revolver