Added support for :only and :except methods.

It is possible now to filter returned attributes and associations by:

  UserSerializer.new(user, only: [:first_name, :last_name])
  UserSerializer.new(user, except: :first_name)
This commit is contained in:
Wojciech Wnętrzak
2013-04-20 23:52:43 +02:00
parent 329a38a7dd
commit 489ebf2132
2 changed files with 56 additions and 5 deletions

View File

@@ -363,6 +363,8 @@ module ActiveModel
end
def include?(name)
return false if options.key?(:only) && !Array(options[:only]).include?(name)
return false if options.key?(:except) && Array(options[:except]).include?(name)
send INCLUDE_METHODS[name]
end