模块:Mongoid::Config::Defaults

包含在:
Mongoid::Config
定义于:
lib/mongoid/config/defaults.rb

Overview

封装加载默认值的逻辑。

实例方法摘要折叠

实例方法详细信息

# load_defaults (version) ⇒对象

在给定的 Mongoid 版本中加载功能标志的默认值。 请注意,此方法将加载给定 Mongoid 版本中引入的功能。

如果提供的版本无效,则引发 [ ArgumentError ]。

参数:

  • 版本 ( string | Float )

    版本号为 Xy



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/mongoid/config/defaults.rb', line 14

def load_defaults(版本)
  案例 版本.to_s
  when /^[0-7]\./
    提高 ArgumentError, "不再支持的版本: #{ version } "

  when ' 8.0 '
    self.legacy_readonly = true

    load_defaults ' 8.1 '

  when ' 8.1 '
    self.immutable_ids = false
    self.legacy_persistence_context_behavior = true
    self.around_callbacks_for_embeds = true
    self.allow_multiple_calls_of_embedded_callbacks = false

    load_defaults ' 9.0 '

  when ' 9.0 '
    self.allow_reparenting_via_nested_attributes = true
    self.autosave_saves_unchanged_documents = true

    load_defaults ' 9.1 '

  when ' 9.1 '
    # 目前,所有标志默认值都反映9.1行为。

  else
    提高 ArgumentError, " Unknown version: #{ version } "
  end
end