Module: Alchemy::JsonApi
- Extended by:
- JsonApi
- Included in:
- JsonApi
- Defined in:
- lib/alchemy/json_api.rb,
lib/alchemy/json_api/engine.rb,
lib/alchemy/json_api/version.rb,
lib/alchemy/json_api/ingredient_serializer.rb,
app/controllers/alchemy/json_api/base_controller.rb,
app/serializers/alchemy/json_api/base_serializer.rb,
app/serializers/alchemy/json_api/node_serializer.rb,
app/serializers/alchemy/json_api/page_serializer.rb,
app/controllers/alchemy/json_api/nodes_controller.rb,
app/controllers/alchemy/json_api/pages_controller.rb,
app/serializers/alchemy/json_api/element_serializer.rb,
app/serializers/alchemy/json_api/language_serializer.rb,
app/controllers/alchemy/json_api/admin/pages_controller.rb,
app/controllers/alchemy/json_api/layout_pages_controller.rb,
app/serializers/alchemy/json_api/ingredient_file_serializer.rb,
app/serializers/alchemy/json_api/ingredient_html_serializer.rb,
app/serializers/alchemy/json_api/ingredient_link_serializer.rb,
app/serializers/alchemy/json_api/ingredient_node_serializer.rb,
app/serializers/alchemy/json_api/ingredient_page_serializer.rb,
app/serializers/alchemy/json_api/ingredient_text_serializer.rb,
app/serializers/alchemy/json_api/ingredient_audio_serializer.rb,
app/serializers/alchemy/json_api/ingredient_video_serializer.rb,
app/serializers/alchemy/json_api/ingredient_select_serializer.rb,
app/controllers/alchemy/json_api/admin/layout_pages_controller.rb,
app/serializers/alchemy/json_api/ingredient_boolean_serializer.rb,
app/serializers/alchemy/json_api/ingredient_picture_serializer.rb,
app/serializers/alchemy/json_api/ingredient_datetime_serializer.rb,
app/serializers/alchemy/json_api/ingredient_headline_serializer.rb,
app/serializers/alchemy/json_api/ingredient_richtext_serializer.rb,
app/models/alchemy/json_api/page.rb
Defined Under Namespace
Modules: Admin, IngredientSerializer Classes: BaseController, BaseSerializer, ElementSerializer, Engine, IngredientAudioSerializer, IngredientBooleanSerializer, IngredientDatetimeSerializer, IngredientFileSerializer, IngredientHeadlineSerializer, IngredientHtmlSerializer, IngredientLinkSerializer, IngredientNodeSerializer, IngredientPageSerializer, IngredientPictureSerializer, IngredientRichtextSerializer, IngredientSelectSerializer, IngredientTextSerializer, IngredientVideoSerializer, LanguageSerializer, LayoutPagesController, NodeSerializer, NodesController, Page, PageSerializer, PagesController
Constant Summary collapse
- VERSION =
"3.0.0"
Instance Method Summary collapse
-
#key_transform ⇒ Object
FastJsonapi key_transform.
-
#key_transform=(value) ⇒ Object
Set FastJsonapi key_transform.
-
#page_cache_max_age ⇒ Object
HTTP Cache-Control max-age.
- #page_cache_max_age=(max_age) ⇒ Object
-
#page_caching_options ⇒ Object
HTTP Cache-Control options.
- #page_caching_options=(options) ⇒ Object
Instance Method Details
#key_transform ⇒ Object
FastJsonapi key_transform
Default :underscore # “some_key” => “some_key”
26 27 28 |
# File 'lib/alchemy/json_api.rb', line 26 def key_transform @_key_transform || :underscore end |
#key_transform=(value) ⇒ Object
Set FastJsonapi key_transform
Supported transformations:
:camel # “some_key” => “SomeKey” :camel_lower # “some_key” => “someKey” :dash # “some_key” => “some-key” :underscore # “some_key” => “some_key”
19 20 21 |
# File 'lib/alchemy/json_api.rb', line 19 def key_transform=(value) @_key_transform = value end |
#page_cache_max_age ⇒ Object
HTTP Cache-Control max-age
Can be set as ‘ALCHEMY_JSON_API_CACHE_DURATION` env var
Default 600 (seconds)
35 36 37 |
# File 'lib/alchemy/json_api.rb', line 35 def page_cache_max_age @_page_cache_max_age ||= ENV.fetch("ALCHEMY_JSON_API_CACHE_DURATION", 600).to_i end |
#page_cache_max_age=(max_age) ⇒ Object
39 40 41 |
# File 'lib/alchemy/json_api.rb', line 39 def page_cache_max_age=(max_age) @_page_cache_max_age = max_age end |
#page_caching_options ⇒ Object
HTTP Cache-Control options
Set any of the ActionController::ConditionalGet#expires_in options
See api.rubyonrails.org/classes/ActionController/ConditionalGet.html#method-i-expires_in
Default ‘true`
50 51 52 53 54 |
# File 'lib/alchemy/json_api.rb', line 50 def @_page_caching_options ||= { must_revalidate: true } end |
#page_caching_options=(options) ⇒ Object
56 57 58 |
# File 'lib/alchemy/json_api.rb', line 56 def () @_page_caching_options = end |