Class: ActiveModelSerializers::Adapter::JsonApi::PaginationLinks
- Inherits:
-
Object
- Object
- ActiveModelSerializers::Adapter::JsonApi::PaginationLinks
- Defined in:
- lib/active_model_serializers/adapter/json_api/pagination_links.rb
Constant Summary
- FIRST_PAGE =
1
Instance Attribute Summary (collapse)
-
- (Object) collection
readonly
Returns the value of attribute collection.
-
- (Object) context
readonly
Returns the value of attribute context.
Instance Method Summary (collapse)
-
- (PaginationLinks) initialize(collection, context)
constructor
A new instance of PaginationLinks.
- - (Object) serializable_hash(options = {})
Constructor Details
- (PaginationLinks) initialize(collection, context)
Returns a new instance of PaginationLinks
9 10 11 12 |
# File 'lib/active_model_serializers/adapter/json_api/pagination_links.rb', line 9 def initialize(collection, context) @collection = collection @context = context end |
Instance Attribute Details
- (Object) collection (readonly)
Returns the value of attribute collection
7 8 9 |
# File 'lib/active_model_serializers/adapter/json_api/pagination_links.rb', line 7 def collection @collection end |
- (Object) context (readonly)
Returns the value of attribute context
7 8 9 |
# File 'lib/active_model_serializers/adapter/json_api/pagination_links.rb', line 7 def context @context end |
Instance Method Details
- (Object) serializable_hash(options = {})
14 15 16 17 18 19 20 21 |
# File 'lib/active_model_serializers/adapter/json_api/pagination_links.rb', line 14 def serializable_hash( = {}) per_page = collection.try(:per_page) || collection.try(:limit_value) || collection.size pages_from.each_with_object({}) do |(key, value), hash| params = query_parameters.merge(page: { number: value, size: per_page }).to_query hash[key] = "#{url()}?#{params}" end end |