2012-04-20 5 views
1

처음으로 몽고 이드를 구성하고 사용하려고합니다. 나는 mongoid.yml 설정 파일 단순히를 설정 :몽고 이드 및 콜렉션

호스트 : localhost를

데이터베이스 : 테이블

내 코드 :

Mongoid.load!("/mongoid.yml") 
    class Data   
    include Mongoid::Document 
    field :study, type: String 
    field :nbc_id, type: String 
    field :short_title, type: String 
    field :source, type: String 
    field :start_date, type: Date 
    end 

    puts Data.study 

I 오류가 계속 :

NoMethodError at/undefined method `study' for Data:Class

'테스트'인 컬렉션 이름을 지정하지 않았기 때문에 생각합니다. 그러나 나는 이것을하는 방법에 대한 예제를 찾을 수 없습니다. .yml 파일이나 코드에 지정해야합니까? 올바른 구문은 무엇입니까? 누구든지 올바른 방향으로 나를 가리킬 수 있습니까?

Tx.

답변

2

Mongoid 문서에 따르면 "Mongoid는 기본적으로 문서를 클래스 이름의 복수형 형식으로 된 컬렉션에 저장합니다. 다음 Person 클래스의 경우 문서를 저장할 컬렉션의 이름은 people입니다." http://mongoid.org/docs/documents.html

문서는 Mongoid 컬렉션 이름을 결정하기 위해 ActiveSupport::Inflector#classify라는 방법을 사용하고 복수를 직접 지정하는 방법에 대한 지침을 제공하는 상태에 간다.

또는 클래스 정의에 "store_in"을 포함하여 클래스에 컬렉션 이름을 지정할 수 있습니다.

class Data   
    include Mongoid::Document 
    store_in :test 

희망이 있습니다.

+0

마크. Tx 대단히! – user1311034