Skip to content

Commit ec5dc49

Browse files
committed
Handle render.ams with nil serializer or adapter
1 parent 84197e4 commit ec5dc49

File tree

3 files changed

+22
-1
lines changed

3 files changed

+22
-1
lines changed

lib/active_model/serializer.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ module ActiveModel
2020
class Serializer
2121
extend ActiveSupport::Autoload
2222
autoload :Adapter
23+
autoload :Null
2324
include Configuration
2425
include Associations
2526
include Attributes

lib/active_model/serializer/null.rb

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
module ActiveModel
2+
class Serializer
3+
class Null < Serializer
4+
def attributes(*)
5+
{}
6+
end
7+
8+
def associations(*)
9+
{}
10+
end
11+
12+
def serializable_hash(*)
13+
{}
14+
end
15+
end
16+
end
17+
end

lib/active_model_serializers/logging.rb

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,10 @@ def notify_render(*)
8181
end
8282

8383
def notify_render_payload
84-
{ serializer: serializer, adapter: adapter }
84+
{
85+
serializer: serializer || ActiveModel::Serializer::Null,
86+
adapter: adapter || ActiveModelSerializers::Adapter::Null
87+
}
8588
end
8689

8790
private

0 commit comments

Comments
 (0)