Overview
このページでは、 Rubyドライバーを使用してMongoDBにデータを書き込む一般的なメソッドを示すコピー可能なコード例があります。
Tip
このページに記載されているメソッドの詳細については、各セクションに提供されているリンクを参照してください。
このページの例を使用するには、コード例をサンプル アプリケーションまたは独自のアプリケーションにコピーします。 <connection string>
など、コード例にあるすべてのプレースホルダーを、MongoDB 配置に関連する値に置き換えてください。
サンプル アプリケーション
次のサンプルアプリケーションを使用して、このページのコード例をテストできます。 サンプル アプリケーションを使用するには、次の手順を実行します。
RubyプロジェクトにRubyドライバーがインストールされていることを確認してください。
次のコードをコピーし、新しい
.rb
ファイルに貼り付けます。このページからコード例をコピーし、 ファイル内の指定された行に貼り付けます。
1 require 'bundler/inline' 2 gemfile do 3 source 'https://rubygems.org' 4 gem 'mongo' 5 end 6 7 uri = "<connection string>" 8 9 Mongo::Client.new(uri) do |client| 10 database = client.use('<database name>') 11 collection = database[:<collection name>] 12 13 # Start example code here 14 15 # End example code here 16 end
1 つを挿入
次のコードは、コレクションに単一のドキュメントを挿入する方法を示しています。
document = { field_name: '<field value>' } collection.insert_one(document)
insert_one
メソッドの詳細については、 のドキュメントの挿入ガイドを参照してください。
複数挿入
次のコードは、コレクションに複数のドキュメントを挿入する方法を示しています。
documents = [ { field_name: '<field value 1>' }, { field_name: '<field value 2>' } ] collection.insert_many(documents)
insert_many
メソッドについて詳しくは、ドキュメントの挿入ガイドをご覧ください。
更新 1
次のコードは、フィールドを作成または編集して、コレクション内の 1 つのドキュメントを更新する方法を示しています。
filter = { field_name: '<field value>' } update = { <update definition> } collection.update_one(filter, update)
update_one
メソッドについて詳しくは、ドキュメントの更新ガイドを参照してください。
複数更新
次のコードは、フィールドを作成または編集して、コレクション内の複数のドキュメントを更新する方法を示しています。
filter = { field_name: '<field value>' } update = { <update definition> } collection.update_many(filter, update)
update_many
メソッドについて詳しくは、ドキュメントの更新ガイドを参照してください。
replaceOne
次のコードは、コレクション内の単一のドキュメントを新しいドキュメントに置き換える方法を示しています。
filter = { field_name: '<field value>' } new_document = { field_name: '<field value>' } collection.replace_one(filter, new_document)
replace_one
メソッドの詳細については、ドキュメントの置換のガイドを参照してください。
deleteOne
次のコードは、コレクション内の 1 つのドキュメントを削除する方法を示しています。
filter = { field_name: '<field value>' } collection.delete_one(filter)
delete_one
メソッドの詳細については、ドキュメントの削除のガイドを参照してください。
複数削除
次のコードは、コレクション内の複数のドキュメントを削除する方法を示しています。
filter = { field_name: '<field value>' } collection.delete_many(filter)
delete_many
メソッドの詳細については、ドキュメントの削除のガイドを参照してください。
一括書き込み (write)
次のコードは、1 つの一括操作で複数の書き込み操作を実行する方法を示しています。
operations = [ { <bulk operation 1> }, { <bulk operation 2> }, { <bulk operation 3> }, ] collection.bulk_write(operations)