Overview
MongoDB Ruby驱动程序是一个允许Ruby应用程序与MongoDB数据库交互的库。您可以使用Ruby驾驶员连接到MongoDB并执行常见的数据操作。本指南向您展示如何创建一个应用程序,使用Ruby驾驶员连接到MongoDB Atlas上托管的MongoDB 集群并查询集群中的数据。
提示
MongoDB Atlas 是完全托管的云数据库服务,旨在托管您的 MongoDB 部署。您可以按照本指南中的步骤创建您的免费(无需信用卡)MongoDB Atlas 部署。
如果您希望使用不同的驾驶员或编程语言连接到MongoDB,请参阅我们的 官方驱动程序的列表。
注意
如果您在此步骤中运行问题,请在MongoDB Stack Overflow标签 或MongoDB Reddit 社区中寻求帮助。您还可以使用此页面右侧的 Rate this page标签页提交反馈。
下载并安装
安装依赖项
在开始开发之前,请确保在开发环境中安装Ruby版本 2.7 或更高版本。macOS 和某些Linux发行版上预装了Ruby ,但您可能需要更新版本。
重要
Windows上不正式支持Ruby驾驶员。
将Ruby驾驶员添加到项目中
打开 quickstart.rb
文件并添加以下代码:
require 'bundler/inline' gemfile do source 'https://rubygems.org' gem 'mongo' end
此代码使用Bundler依赖项管理工具将Ruby驾驶员添加为依赖项。
完成这些步骤后,您将拥有一个安装了驾驶员依赖项的新项目目录。
创建 MongoDB 部署
您可以在 MongoDB Atlas 上创建一个免费套餐 MongoDB 部署来存储和管理您的数据。MongoDB Atlas 在云端托管和管理您的 MongoDB 数据库。
在 Atlas 上创建免费的 MongoDB 部署
请按照 Atlas 入门指南中的步骤,设置新的 Atlas 账户并将示例数据加载到新的免费套餐 MongoDB 部署中。
完成这些步骤后,您就可以在 Atlas 上有一个新的免费套餐 MongoDB 部署,并建立数据库用户凭证,以及将示例数据加载到数据库中。
创建连接字符串
您可以通过提供连接 URI(也称为连接字符串)来连接到MongoDB 部署,该 URI 指示驾驶员如何连接到MongoDB 部署以及连接时的行为方式。
连接字符串包含部署的主机名或 IP 地址和端口、身份验证机制、用户档案(如果适用)以及连接选项。
要学习;了解如何连接到未托管在Atlas上的实例或部署,请参阅 选择连接目标指南。
查找 MongoDB Atlas 连接字符串
要检索您在上一步中创建的部署的连接字符串,登录您的Atlas帐户并导航到 Clusters 部分。然后,单击新部署的 Connect 按钮。

继续执行 Connect your application 部分。从 Driver 选择菜单中选择“Ruby”,然后从 Version 选择菜单中选择与您已安装版本最匹配的版本。
完成这些步骤后,您将拥有一个包含数据库用户名和密码的连接字符串。
连接至 MongoDB
编辑Ruby应用程序文件
导航到 ruby-quickstart
目录中的 quickstart.rb
文件。请将以下代码复制并粘贴到本教程“下载和安装”步骤中的 Bundler 代码下方。此代码连接到MongoDB并查询 sample_mflix
数据库中的 movies
集合。
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
目录中,运行以下Shell命令以运行应用程序:
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 部署、对示例数据运行查询并打印结果。
后续步骤
恭喜您完成快速入门教程!
在本教程中,您创建了一个Ruby应用程序,该应用程序连接到MongoDB Atlas上托管的MongoDB 部署,并检索与查询匹配的文档。
通过以下资源了解详情有关Ruby驾驶员的更多信息: