identity_map
설정이 config/mongoid.yml
파일에서 선택되는 것으로 나타나지 않습니다.Mongoid Identity Map 설정이 Rails 콘솔에서 적용되지 않습니다.
development:
sessions:
default:
uri: mongodb://localhost:27017/test_development
options: &defaultopts
op_timeout: 60
allow_dynamic_fields: false
identity_map_enabled: true
preload_models: true
raise_not_found_error: false
이 RAILS_ENV=development rails console
을 통해 실행되는지도가 켜져되지 않습니다 : 여기에
Mongoid
를로드
$ RAILS_ENV=development rails c
Loading development environment (Rails 3.2.13)
[1] pry(main)> Mongoid.using_identity_map?
=> false
[2] pry(main)> Mongoid.identity_map_enabled?
=> false
도 시도하고 파일은 변경되지 않습니다 :
[3] pry(main)> require 'mongoid'
=> false
[4] pry(main)> Mongoid.load!("./config/mongoid.yml")
=> {"sessions"=>
{"default"=>
{"uri"=>"mongodb://localhost:27017/test_development",
"options"=>
{"op_timeout"=>60,
"allow_dynamic_fields"=>false,
"identity_map_enabled"=>true,
"preload_models"=>true,
"raise_not_found_error"=>false}}}}
[5] pry(main)> Mongoid.using_identity_map?
=> false
[6] pry(main)> Mongoid.identity_map_enabled?
=> false
수동으로 값을 설정하면 영향을 미칩니다.
[8] pry(main)> Mongoid.identity_map_enabled = true
=> true
[9] pry(main)> Mongoid.using_identity_map?
=> true
[10] pry(main)> Mongoid.identity_map_enabled?
=> true
설정이 제대로로드되지 않는 이유는 무엇입니까?
이 문제는 Rails 3.2.13 및 Mongoid 3.1.2를 사용하여 발생합니다.
몽고이 문서는': default'가': default'에 중첩되어서는 안된다는 당신의 주장과 직접적으로 모순되는 것으로 보입니다 : http://mongoid.org/en/mongoid/docs/installation.html. – cbmanica
@cbmanica 설정할 수있는 여러 옵션이 있으며,이를 강조하기 위해 내 대답을 편집했습니다. [documentation] (http://mongoid.org/en/mongoid/docs/installation.html)에서 여러 키에 여러 옵션을 설정하는 예를 보려면 "몽고 이드 구성 분석"섹션을 살펴보십시오. – jwieringa