类:Mongoid::Fields::Encrypted

继承:
标准分析器 显示全部
定义于:
lib/mongoid/fields/ 加密

Overview

表示应加密的字段。

实例属性摘要

Standard继承的属性

#default_val#label#name#options

实例方法摘要折叠

Standard继承的方法

#add_atomic_changes#association#eval_default#foreign_key? , #lazy? , #localize_present? , #localized? , #object_id_field? , #pre_processed? , #type

构造函数详情

#initialize (name, options = {}) ⇒已加密

返回 Encrypted 的新实例。



8
9
10
11
12
13
14
15
# File 'lib/mongoid/fields/ 加密', line 8

def 初始化(名称, 选项 = {})
  @encryption_options = if 选项[:encrypt].is_a?(哈希)
                          选项[:encrypt]
                        else
                          {}
                        end
  
end

实例方法详细信息

#确定性?true | false | false nil

返回值 是否应使用确定性加密算法对该字段进行加密;如果未指定,则返回 nil。

返回:

  • ( true | false | nil )

    是否应使用确定性加密算法对字段进行加密;如果未指定,则返回 nil。



19
20
21
# File 'lib/mongoid/fields/ 加密', line 19

def 确定性?
  @encryption_options[:确定性]
end

#key_idString | nil

返回值 用于加密的密钥 ID;如果未指定,则返回 nil。

返回:

  • ( string | nil )

    用于加密的密钥 ID;如果未指定,则返回 nil。



25
26
27
# File 'lib/mongoid/fields/ 加密', line 25

def key_id
  @encryption_options[:key_id]
end

# key_name_fieldstring | nil

返回 包含用于加密的密钥替代名称的字段的名称;如果未指定,则返回 nil。

返回:

  • ( string | nil )

    包含用于加密的密钥替代名称的字段名称;如果未指定,则返回 nil。



31
32
33
# File 'lib/mongoid/fields/ 加密', line 31

def key_name_field
  @encryption_options[:key_name_field]
end

# set_key_id (key_id) ⇒对象

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

覆盖字段的 key_id。

此方法仅用于测试目的,不应在应用程序代码中使用。 schema_map 是在应用程序生命周期的早期生成的,之后覆盖 key_id 将不会产生任何影响。



43
44
45
# File 'lib/mongoid/fields/ 加密', line 43

def set_key_id(key_id)
  @encryption_options[:key_id] = key_id
end