Base
用于序列化和反序列化自定义对象的类。
示例
class MoneySerializer < ActiveJob::Serializers::ObjectSerializer
def serialize(money)
super("amount" => money.amount, "currency" => money.currency)
end
def deserialize(hash)
Money.new(hash["amount"], hash["currency"])
end
private
def klass
Money
end
end
方法
- D
- K
- S
包含的模块
实例公共方法
deserialize(json) 链接
从 JSON 基本类型反序列化参数。
源代码:显示 | 在 GitHub 上
# File activejob/lib/active_job/serializers/object_serializer.rb, line 42 def deserialize(json) raise NotImplementedError end
serialize(hash) 链接
将参数序列化为 JSON 基本类型。
源代码:显示 | 在 GitHub 上
# File activejob/lib/active_job/serializers/object_serializer.rb, line 37 def serialize(hash) { Arguments::OBJECT_SERIALIZER_KEY => self.class.name }.merge!(hash) end
serialize?(argument) 链接
确定是否应由序列化器序列化参数。
源代码:显示 | 在 GitHub 上
# File activejob/lib/active_job/serializers/object_serializer.rb, line 32 def serialize?(argument) argument.is_a?(klass) end
实例私有方法
klass() 链接
将要序列化的对象的类。
源代码:显示 | 在 GitHub 上
# File activejob/lib/active_job/serializers/object_serializer.rb, line 48 def klass # :doc: raise NotImplementedError end