Docs Menu

モデルにドキュメント モジュールを含める

このガイドでは、Mongoid の Mongoid::Document モジュールについて学習できます。 Document モジュールはMongoDBドキュメントのRuby実装であり、フィールドと値のペアにデータを保存します。 MongoDBドキュメントの用語、構造、および制限の詳細については、サーバー マニュアルの ドキュメント を参照してください。

MongoDBに永続化するクラスに Mongoid::Document モジュールを含める必要があります。 モデルクラスに Document モジュールを含めることで、 モデルクラスのインスタンスでそのメソッドを使用できます。

次のコードは、サンプルPerson モデルクラスに Document モジュールを含める方法を示しています。

class Person
include Mongoid::Document
field :name, type: String
end

Documentモジュールの詳細については、 APIドキュメント を参照してください。

モデルのインスタンスはコレクションに直接保存することも、Document モジュールを使用する他のクラスに埋め込むこともできます。 DocumentインスタンスをMongoDBに保存すると、 RubyハッシュまたはJSONオブジェクトに似たBSONオブジェクトに変換されます。

次のコードでは、前のセクションで定義された Person モデルのインスタンスが作成されます。

Person.create(name: 'Meena Kumar')

ドキュメントはMongoDBに以下のように表示されます。

{
"_id": {
"$oid": "673b6dce61700598c24a72b0"
},
"name": "Meena Kumar"
}

注意

_id フィールド

モデルのインスタンスをデータベースに永続化すると、モデル内でこのフィールドを明示的に定義していない場合でも、 MongoDB は一意の 値を持つ _idフィールドを自動的に追加します。

このフィールドの詳細については、サーバー マニュアルの ObjectId参照を参照してください。

Mongoid モデルで使用できるフィールド型の詳細については、「 フィールド型ガイド 」を参照してください。

MongoDBデータにアクセスして変更する方法については、「 データの操作 」ガイドを参照してください。

Mongoid モデルを使用してデータをモデル化する方法の詳細については、「 データのモデル化 」ガイドを参照してください。