Overview
MongoDB Rubyドライバーは、 RubyアプリケーションがMongoDBデータベースとやりとりできるようにするライブラリです。Rubyドライバーを使用してMongoDBに接続し、一般的なデータ操作を実行できます。このガイドでは、 Rubyドライバーを使用してMongoDB AtlasでホストされているMongoDBクラスターに接続し、クラスター内のデータをクエリするアプリケーションを作成する方法について説明します。
Tip
MongoDB Atlas は、MongoDB 配置をホストする完全管理のクラウドデータベース サービスです。このガイドの手順に従い、独自の無料(クレジット カード不要)MongoDB Atlas 配置を作成できます。
別のドライバーまたはプログラミング言語を使用してMongoDBに接続する場合は、公式ドライバーのリストを参照してください。
注意
この手順で問題が発生した場合は、 MongoDB Stack Overflowタグ またはMongoDB Reddit コミュニティ でサポートを依頼してください。このページの右側にあるRate this page タブを使用してフィードバックを送信することもできます。
ダウンロードとインストール
Rubyドライバーをプロジェクトに追加します 。
quickstart.rbファイルを開き、次のコードを追加します。
require 'bundler/inline' gemfile do source 'https://rubygems.org' gem 'mongo' end
このコードでは Bundler 依存関係管理ツールを使用してRubyドライバーを依存関係として追加します。
重要
Ruby 3.4+ Dependencies
Ruby v3.4 以降を使用している場合は、コードに次の行を含めて、bigdecimal gem をアクティブ化する必要があります。
gemfile do source 'https://rubygems.org' gem 'mongo' gem 'bigdecimal' end
以前のRubyバージョンには、デフォルトでこの gem が含まれています。
これらの手順を完了すると、ドライバーの依存関係がインストールされた新しいプロジェクトディレクトリが作成されます。
MongoDB 配置の作成
MongoDB Atlas では無料階層の MongoDB 配置を作成して、データを保存および管理できます。 MongoDB Atlas は、MongoDB databaseをクラウドでホストおよび管理します。
Atlas に無料のMongoDB配置を作成します。
MongoDB の使用開始ガイドを完了して、新しい Atlas アカウントを設定し、サンプルデータを新しい無料階層のMongoDB配置にロードします。
これらの手順を完了すると、Atlas に新しい無料階層の MongoDB 配置、データベースユーザーの認証情報、データベースに サンプル データがロードされます 。
接続文字列の作成
MongoDBデプロイに接続するには、接続文字列とも呼ばれる 接続 URI を提供します。これは、 MongoDBデプロイに接続する方法と接続中の動作をドライバーに指示します。
接続stringには、配置のホスト名またはIPアドレスとポート、認証メカニズム、ユーザー認証情報(該当する場合)、および接続オプションが含まれます。
Atlas でホストされていないインスタンスまたは配置に接続する方法については、 「接続ターゲットの選択」ガイドを参照してください。
MongoDB Atlas接続文字列を見つけます。
Clusters前のステップで作成した配置の接続文字列を取得するには、AtlasDatabase アカウントにログし、Connect セクションの下の ページに移動します。新しい配置の [] ボタンをクリックします。

データベースユーザーをまだ設定していない場合、 MongoDB は新しいユーザーを作成して設定するように要求します。
Connect to your application セクションの下の Drivers ボタンをクリックし、Driver 選択メニューから「Ruby」を選択し、Version 選択メニューからインストールしたバージョンに最適なバージョンを選択します。
接続文字列のみを表示するには、View full code sample オプションが選択されていないことを確認します。
これらの手順を完了すると、データベースのユーザー名とパスワードを含む接続stringが作成されます。
MongoDB に接続する
Rubyアプリケーションファイルを編集します。
quickstart.rbruby-quickstartディレクトリ内の ファイルに移動します。このチュートリアルの「ダウンロードとインストール」ステップから次のコードをコピーして、Bunder コードの下に貼り付けます。このコードはMongoDBに接続し、 データベース内のmovies sample_mflixコレクションをクエリします。
uri = '<connection string>' begin client = Mongo::Client.new(uri) database = client.use('sample_mflix') movies = database[:movies] # Queries for a movie that has the title 'Back to the Future' query = { title: 'Back to the Future' } movie = movies.find(query).first # Prints the movie document puts movie ensure client&.close end
接続文字列を割り当てます。
<connection string> プレースホルダーを、このチュートリアルの接続文字列の作成ステップからコピーした接続文字列に置き換えます。
Rubyアプリケーション を実行します。
ruby-quickstartディレクトリから、次のシェルコマンドを実行してアプリケーションを実行します。
ruby quickstart.rb
コマンドライン出力には、検索された映画ドキュメントの詳細が含まれます。
{"_id"=>BSON::ObjectId('...'), "plot"=>"A young man is accidentally sent 30 years into the past in a time-traveling DeLorean invented by his friend, Dr. Emmett Brown, and must make sure his high-school-age parents unite in order to save his own existence.", ... "title"=>"Back to the Future", ...
エラーが発生した場合や出力が表示されない場合は、quickstart.rbファイルに正しい接続文字列が指定されており、サンプルデータがロードされていることを確認してください。
これらの手順を完了すると、ドライバーを使用して MongoDB 配置に接続し、サンプル データに対してクエリを実行し、結果を出力する動作するアプリケーションが作成されます。
次のステップ
クイック スタート チュートリアルを完了しました。
このチュートリアルでは、 MongoDB AtlasでホストされているMongoDBデプロイに接続し、クエリに一致するドキュメントを検索するRubyアプリケーションを作成しました。
次のリソースからRubyドライバーの詳細を学習できます。
クエリ ドキュメント セクションで、読み取り操作を実行する方法を学びます。
「ドキュメントの挿入」セクションでは、書込み操作を実行する方法を学びます。
