lib/ixtlan/babel/factory.rb in ixtlan-babel-0.3.5 vs lib/ixtlan/babel/factory.rb in ixtlan-babel-0.4.0

- old
+ new

@@ -30,11 +30,11 @@ end DATE_TIME_TO_S = Proc.new do |dt| dt.strftime('%Y-%m-%dT%H:%M:%S.') + ("%06d" % (dt.sec_fraction * NANOSECONDS_IN_DAY ) )[0..6] + dt.strftime('%z') end - + DEFAULT_MAP = { 'DateTime' => DATE_TIME_TO_S, 'ActiveSupport::TimeWithZone' => TIME_TO_S, 'Time' => TIME_TO_S } @@ -55,10 +55,11 @@ end def new_serializer( resource ) if resource.respond_to?(:model) model = resource.model - elsif resource.respond_to?( :collect) && !resource.respond_to?( :to_hash) + elsif resource.respond_to?( :collect) && + !resource.respond_to?( :to_hash) if resource.empty? return EmptyArraySerializer.new else r = resource.first model = r.respond_to?( :model ) ? r.model : r.class