Menu Docs
Página inicial do Docs
/ / /
Mongoid
/

Compatibilidade

Nesta página

  • Compatibilidade do driver Ruby MongoDB
  • Compatibilidade com rubi
  • Compatibilidade do servidor MongoDB
  • Compatibilidade com Rails
  • Suporte a estruturas Rails

A tabela de compatibilidade a seguir especifica as versões do Ruby driver for MongoDB (a gem mongo ) suportadas pelas versões de patch mais recentes das versões Mongoid especificadas.

Observação

Versões mais antigas do Mongoid na mesma versão menor podem suportar versões mais antigas do driver. Por exemplo, Mongoid 7.0.5 suporta versões 2.5 e mais recentes do driver, enquanto Mongoid 7.0.6 requer versão 2.7 ou mais recente do driver.

Mongoid
Driver 2.19-2.18
Driver 2.17-2.10
Driver 2.9-2.7
8.0 até 9.0
7.2 até 7.5
7.0 até 7.1

A tabela de compatibilidade a seguir especifica as versões dos intérpretes Ruby compatíveis com Mongoid. "D" em uma coluna significa que a compatibilidade com essa versão Ruby está obsoleta.

Mongoid
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
8.1
8.0
7.5
D
D
7.4
7.3
[1]
[1]
D
D
7.2
[2]
[2]
D
D
7.1
[3]
[3]
[4]
7.0
[4]
[5]
[1](1, 2) Mongoid versão 7.3.2 ou superior é necessário.
[2](1, 2) A versão Mongoide 7.2.5 ou superior é exigida.
[3](1, 2) versão mongoide 7.1.10 ou superior é necessário.
[4](1, 2) Ruby versão 2.4.1 ou superior é exigido.
[5] A versão 2.2.2 ou superior do ruby é obrigatória.

A tabela de compatibilidade a seguir especifica a(s) versão(ões) recomendada(s) do Mongoid para uso com uma versão específica do servidor MongoDB.

Observe que, para usar recursos de uma versão específica do servidor MongoDB , o driver e o Mongoid devem ser compatíveis com essa versão do servidor . Consulte a página de compatibilidade de drivers para ver as matrizes de compatibilidade de drivers.

"D" em uma coluna significa que o suporte para a versão do servidor MongoDB está obsoleto e será removido em uma próxima versão.

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 até 9.0
7.4 até 7.5
D
D
D
D
7.0 até 7.3
D
D
D
D

A tabela de compatibilidade a seguir especifica quais versões do Ruby on Rails são suportadas pelo Mongoid.

Mongoid
Trilhos 7.2
Trilhos 7.1
Rails 7.0
Trilhos 6.1
Rails 6.0
Trilhos 5.2
Rails 5.1
9.0
[11]
[10]
8.1
[11]
[10]
[6]
8.0
[10]
[6]
7.5
[6]
D
7.4
[6]
[6]
7.3
[9]
[6]
[6]
7.2
[8]
[6]
[6]
7.1
[8]
7.0
[8]
[7]
[6](1, 2, 3, 4, 5, 6, 7, 8, 9) Não é possível utilizar Rails 5.x com Ruby 3.
[7] Rails 6.0 requer Mongoid 7.0.5 ou posterior.
[ 8 ](1, 2, 3) As ferrovias 6.1 exigem Mongoide 7.0.12, 7.1.7 ou 7.2.1 nos respectivos 7.0, 7.1 e 7.2 ramos estáveis.
[9] Rails 7.x exigem Mongoid 7.3.4 ou versão posterior.
[ 10 ](1, 2, 3) As ferrovias 7.1 exigem Mongoide 8.0.7 ou 8.1.3 no respectivo 8.0 e 8.1 ramificações estáveis.
[ 11 ](1, 2) As ferrovias 7.2 exigem Mongoide 8.1.6 e 9.0.2 no respectivo 8.1 e 9.0 ramificações estáveis.

O Ruby on Rails é composto por uma série de frameworks, com as quais o Mongoid tenta fornecer compatibilidade sempre que possível.

Embora o Mongoid tente oferecer compatibilidade de API com o Active Record, as bibliotecas que dependem diretamente do Active Record podem não funcionar como esperado quando o Mongoid é usado como um substituto suspenso.

Observação

O Mongoid pode ser usado junto com o Active Record no mesmo aplicação sem problemas.

Framework Rails
Suportado?
ActionCable
[12]
ActionMailbox
[13]
ActionMailer

ActionPack

ActionText
[13]
ActionView

ActiveJob
[16]
ActiveModel
[14]
ActiveStorage
[13]
ActiveSupport
[15]
[12] Atualmente não há adaptador MongoDB para ActionCable, no entanto, qualquer adaptador existente (como Redis) pode ser usado com sucesso em conjunto com modelos Mongoid
[ 13 ](1, 2, 3) Depende diretamente de ActiveRecord
[14] Mongoid::Document inclui ActiveModel::Model e aproveita ActiveModel::Validations para validações
[15] Mongoid requer ActiveSupport e usa-o extensivamente, incluindo ActiveSupport::TimeWithZone para gerenciamento de tempo.
[16] A serialização de objetos BSON e Mongoid funciona melhor se você enviar explicitamente BSON::ObjectId 's como strings e reconstruí-los no trabalho:
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

Voltar

Instalação