Docs 菜单
Docs 主页
/ / /
Mongoid
/

兼容性

在此页面上

  • Ruby MongoDB 驱动程序的兼容性
  • Ruby 兼容性
  • MongoDB Server 兼容性
  • Rails 兼容性
  • Rails 框架支持

以下兼容性表指定了指定 Mongoid 版本的最新补丁版本支持的Ruby 驾驶员MongoDB ( gem)的版本。mongo

注意

同一次要版本中较旧版本的 Mongoid 可能支持较旧版本的驱动程序。例如,Mongoid 7.0.5 支持 2.5 及更高版本的驱动程序,而 Mongoid 7.0.6 需要 2.7 或更高版本的驱动程序。

Mongoid
驱动程序 2.19-2.18
驱动程序 2.17-2.10
驱动程序 2.9-2.7
8.0到9.0
7.2到7.5
7.0到7.1

以下兼容性表指定了 Mongoid 支持的 Ruby 解释器版本。列中的“D”表示已弃用对该 Ruby 版本的支持。

Mongoid
Ruby 3.3
Ruby 3.2
Ruby 3.1
Ruby 3.0
Ruby 2.7
Ruby 2.6
Ruby 2.5
Ruby 2.4
Ruby 2.3
Ruby 2.2
JRuby 9.4
JRuby 9.3
JRuby 9.2
9.0
[1]
8.1
[1]
8.0
7.5
D
D
7.4
7.3
[2]
[2]
D
D
7.2
[3]
[3]
D
D
7.1
[4]
[4]
[5]
7.0
[5]
[6]
[1]12 Ruby3.3 需要 Mongoid8.1.7 和9 。0 。相应3 8中的 。1 和9 。0 个稳定分支。
[2](12) 需要 Mongoid 版本 7.3.2 或更高版本。
[3](12) 需要 Mongoid 版本 7.2.5 或更高版本。
[4](1, 2) 需要 7.1.10 或更高版本的 Mongoid。
[5]12需要 Ruby 版本2.4.1或更高版本。
[6] 需要 Ruby 版本 2.2.2 或更高版本。

以下兼容性表指定了与特定版本的 MongoDB 服务器一起使用的 Mongoid 推荐版本。

请注意,要使用特定 MongoDB 服务器版本的功能,驱动程序和 Mongoid 必须支持该服务器版本。请参阅驱动程序兼容性页面以查看驱动程序兼容性矩阵。

列中的“D”表示已弃用对该 MongoDB 服务器版本的支持,并将在下一版本中将其删除。

Mongoid
MongoDB 7.0
MongoDB 6.0
MongoDB 5.0
MongoDB 4.4
MongoDB 4.2
MongoDB 4.0
MongoDB 3.6
MongoDB 3.4
MongoDB 3.2
MongoDB 3.0
MongoDB 2.6
8.0到9.0
7.4到7.5
D
D
D
D
7.0到7.3
D
D
D
D

以下兼容性表指定了 Mongoid 支持哪些版本的 Ruby on Rails。

Mongoid
Rails 8.0
Rails 7.2
Rails 7.1
Rails 7.0
Rails 6.1
Rails 6.0
Rails 5.2
Rails 5.1
9.0
[ 13 ]
[ 12 ]
[ 11 ]
8.1
[ 13 ]
[ 12 ]
[ 11 ]
[7]
8.0
[ 11 ]
[7]
7.5
[7]
D
7.4
[7]
[7]
7.3
[10]
[7]
[7]
7.2
[9]
[7]
[7]
7.1
[9]
7.0
[9]
[8]
[ 7 ](123456789)不支持将 Rails 5.x 与 Ruby 3 一起使用。
[8] Rails 6.0 需要 7.0.5 或更高版本的 Mongoid。
[ 9 ](1, 2, 3) 的 Mongoid 7.0、7.1 和 7.2 稳定分支中的 7.0.12、7.1.7 或 7.2.1。
[ 10 ] Rails 7.x 要求使用 Mongoid 7.3.4 或更高版本。
[ 11 ]123 Rails 7.1需要 Mongoid 8.0 。 7或8 。 1 。相应8 3 0和8 。 1 稳定的分支。
[ 12 ]12 Rails 7.2需要 Mongoid 8.1.6和9 。 0 。相应8 2 1和9 。 0 稳定的分支。
[ 13 ]12 Rails 8.0需要 Mongoid 8.1.7和9 。 0 。相应8 3 1和9 。 0 稳定的分支。

Ruby on Rails 由许多框架组成,Mongoid 尝试尽可能提供与这些框架的兼容性。

尽管 Mongoid 尝试提供与 Active Record 的API兼容性 ,当使用 Mongoid 作为直接替代品时,直接依赖于 Active Record 的库可能无法按预期工作。

注意

Mongoid 可以在同一应用程序中与 Active Record 一起使用,不会出现问题。

Rails 框架
支持?
ActionCable
[ 14 ]
ActionMailbox
[15]
ActionMailer

ActionPack

ActionText
[15]
ActionView

ActiveJob
[ 18 ]
ActiveModel
[ 16 ]
ActiveStorage
[15]
ActiveSupport
[ 17 ]
[ 14 ] 目前没有MongoDB适配器,但任何现有适配器(例如ActionCable Redis )可以成功地与 Mongoid 模型结合使用
[ 15 ]123直接依赖于ActiveRecord
[ 16 ] Mongoid::Document 包括ActiveModel::Model并利用ActiveModel::Validations进行验证
[ 17 ] Mongoid 需要并广泛使用ActiveSupport ,包括用于时间处理的ActiveSupport::TimeWithZone
[ 18 ] 如果您显式将BSON::ObjectId作为字符串发送,并在作业中重新构建它们,则 BSON 和 Mongoid 对象的序列化效果最佳:
record = Model.find(...)
MyJob.perform_later(record._id.to_s)
class MyJob < ApplicationJob
def perform(id_as_string)
record = Model.find(id_as_string)
# ...
end
end

后退

安装