Class: GraphQL::Relay::RelationConnection
- Inherits:
-
BaseConnection
- Object
- BaseConnection
- GraphQL::Relay::RelationConnection
- Defined in:
- lib/graphql/relay/relation_connection.rb
Overview
A connection implementation to expose SQL collection objects. It works for:
-
‘ActiveRecord::Relation`
-
‘Sequel::Dataset`
Constant Summary
Constants inherited from BaseConnection
BaseConnection::CONNECTION_IMPLEMENTATIONS, BaseConnection::CURSOR_SEPARATOR, BaseConnection::METHODS_FROM_ARGUMENTS
Instance Attribute Summary
Attributes inherited from BaseConnection
#arguments, #max_page_size, #object, #parent
Instance Method Summary collapse
- #cursor_from_node(item) ⇒ Object
- #has_next_page ⇒ Object
-
#has_previous_page ⇒ Object
Used by ‘pageInfo`.
Methods inherited from BaseConnection
#after, #before, connection_for_items, #edge_nodes, #end_cursor, #first, #initialize, #last, #order, #page_info, register_connection_implementation, #start_cursor
Constructor Details
This class inherits a constructor from GraphQL::Relay::BaseConnection
Instance Method Details
#cursor_from_node(item) ⇒ Object
8 9 10 11 |
# File 'lib/graphql/relay/relation_connection.rb', line 8 def cursor_from_node(item) offset = starting_offset + paged_nodes_array.index(item) + 1 Base64.strict_encode64(offset.to_s) end |
#has_next_page ⇒ Object
13 14 15 |
# File 'lib/graphql/relay/relation_connection.rb', line 13 def has_next_page exceeds_limit?(first) end |
#has_previous_page ⇒ Object
Used by ‘pageInfo`
18 19 20 |
# File 'lib/graphql/relay/relation_connection.rb', line 18 def has_previous_page exceeds_limit?(last) end |