rename context to serialization_context

This commit is contained in:
tchak
2015-10-21 12:29:54 +02:00
parent e6d1d6be0c
commit 31172b1be5
6 changed files with 36 additions and 7 deletions

View File

@@ -1,4 +1,5 @@
require 'active_support/core_ext/class/attribute'
require 'active_model_serializers/serialization_context'
module ActionController
module Serialization
@@ -46,7 +47,7 @@ module ActionController
[:_render_option_json, :_render_with_renderer_json].each do |renderer_method|
define_method renderer_method do |resource, options|
options.fetch(:context) { options[:context] = request }
options.fetch(:serialization_context) { options[:serialization_context] = ActiveModelSerializers::SerializationContext.new(request) }
serializable_resource = get_serializer(resource, options)
super(serializable_resource, options)
end

View File

@@ -222,7 +222,7 @@ module ActiveModel
end
def pagination_links_for(serializer, options)
JsonApi::PaginationLinks.new(serializer.object, options[:context]).serializable_hash(options)
JsonApi::PaginationLinks.new(serializer.object, options[:serialization_context]).serializable_hash(options)
end
end
end

View File

@@ -41,11 +41,11 @@ module ActiveModel
end
def url(options)
@url ||= options.fetch(:links, {}).fetch(:self, nil) || original_url
@url ||= options.fetch(:links, {}).fetch(:self, nil) || request_url
end
def original_url
@original_url ||= context.original_url[/\A[^?]+/]
def request_url
@request_url ||= context.request_url
end
def query_parameters

View File

@@ -0,0 +1,10 @@
module ActiveModelSerializers
class SerializationContext
attr_reader :request_url, :query_parameters
def initialize(request)
@request_url = request.original_url[/\A[^?]+/]
@query_parameters = request.query_parameters
end
end
end