handle include param for as_json and to_xml

This commit is contained in:
Albert Yi
2019-04-18 12:54:11 -07:00
parent a12f6badde
commit 0daa8184d4

View File

@@ -150,6 +150,8 @@ class ApplicationRecord < ActiveRecord::Base
def as_json(options = {})
options ||= {}
options[:include] ||= []
options[:except] ||= []
options[:except] += hidden_attributes
@@ -166,6 +168,7 @@ class ApplicationRecord < ActiveRecord::Base
if options[:only]
options[:methods] = options[:methods] & options[:only]
options[:include] = options[:include] & options[:only]
end
super(options)
@@ -174,6 +177,8 @@ class ApplicationRecord < ActiveRecord::Base
def to_xml(options = {}, &block)
options ||= {}
options[:include] ||= []
options[:except] ||= []
options[:except] += hidden_attributes
@@ -190,6 +195,7 @@ class ApplicationRecord < ActiveRecord::Base
if options[:only]
options[:methods] = options[:methods] & options[:only]
options[:include] = options[:include] & options[:only]
end
super(options, &block)