2016-09-08 6 views
0

mongoid.yml 파일을 생성하고 아래 오류를 받으려고합니다. database.yml을 삭제했습니다. 이 오류를 어떻게 해결할 수 있습니까? 에서mongoid.yml을 생성하려고하면 b/c가 실패합니다. database.yml의 지정된 어댑터에 보석이 없습니다.

$ rails g mongoid:config    
/Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/railties-5.0.0.1/lib/rails/application/configuration.rb:143:in `database_configuration': Cannot load `Rails.application.database_configuration`: 
Could not load database configuration. No such file - ["config/database.yml"] (RuntimeError) 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activerecord-5.0.0.1/lib/active_record/railtie.rb:122:in `block (2 levels) in <class:Railtie>' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/lazy_load_hooks.rb:38:in `instance_eval' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/lazy_load_hooks.rb:38:in `execute_hook' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/lazy_load_hooks.rb:45:in `block in run_load_hooks' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/lazy_load_hooks.rb:44:in `each' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/lazy_load_hooks.rb:44:in `run_load_hooks' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activerecord-5.0.0.1/lib/active_record/base.rb:324:in `<module:ActiveRecord>' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activerecord-5.0.0.1/lib/active_record/base.rb:24:in `<top (required)>' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `block in require' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:259:in `load_dependency' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application.rb:338:in `active_record_configured?' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application.rb:259:in `disconnect_database' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application.rb:97:in `preload' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application.rb:143:in `serve' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application.rb:131:in `block in run' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application.rb:125:in `loop' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application.rb:125:in `run' 
    from /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/spring-1.7.2/lib/spring/application/boot.rb:19:in `<top (required)>' 
    from /Users/tomcaflisch/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
    from /Users/tomcaflisch/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' 
    from -e:1:in `<main>' 
+0

몽고이우스 설치 문서는 ActiveRecord를 완전히 사용하지 않도록 설정해야합니다. –

+0

@muistooshort 그들이 어디에서 나를 지적 할 수 있습니까? 나는 그것을 찾을 수 없다. (https://docs.mongodb.com/ruby-driver/master/mongoid-tutorials/) – Catfish

답변

2

당신의 config/application.rb 다음을 제거합니다

require 'rails/all'

을 다음과 같이 :

require "rails" 
# Pick the frameworks you want: 
require "active_model/railtie" 
require "active_job/railtie" 
# require "active_record/railtie" 
require "action_controller/railtie" 
require "action_mailer/railtie" 
require "action_view/railtie" 
require "action_cable/engine" 
require "sprockets/railtie" 
require "rails/test_unit/railtie" 

이로드 active_record을 사용하지 않습니다.

그런 다음 당신은 제거하거나 등 config/application.rb, config/environments/* 아래에있는 모든 환경 파일, config/initializers/ 아래에있는 모든 초기화가 포함 config 디렉토리,

에서 모든 파일에 config.active_record.*의 모든 항목을 주석 처리합니다 마지막으로 을 기반으로하는 app/models 디렉토리 아래의 모든 모델을 제거해야합니다.

+0

나는 이것을했고 mongoid.yml 파일을 생성하려고 할 때 나는 오류를 얻는다. '$ rails g mongoid : config /Users/tomcaflisch/.rvm/gems/ruby-2.3.1/gems/railties-5.0.0.1/lib/rails/railtie/configuration.rb:95:in'method_missing ': 정의되지 않음 # (NoMethodError)에 대한 메소드'active_record ' \t' – Catfish

+0

응답을 갱신했습니다. – Dharam

+0

또한'Rails.application.config.active_record. *'를'config/initializers/new_framework_defaults.rb'에서 주석 처리해야했습니다. – Catfish