module ActiveModel::AsJsonFilter
Constants
- OptionMethods
默认公共字段配置
以下是个属性在配置时直接覆盖即可。
Public Instance Methods
as_json(options = {})
click to toggle source
InstanceMethods
Calls superclass method
# File lib/active_model_as_json_filter.rb, line 60 def as_json options = {} # 1. 配置参数 _o = {} AsJsonOptions::OptionFields.each do |field| _v = Array(self.class.as_json_options.send(field)).flatten.to_a.map(&:to_sym) _o[field] = _v if not _v.empty? end result = super _o.merge(options) # 2. 两次全局和局部回调 result = ActiveModel::AsJsonFilter.finalizer_proc.call(result) result = self.class.as_json_options.finalizer_proc.call(result, self) return result end