Class: Hanami::Action::BaseParams
- Inherits:
-
Object
- Object
- Hanami::Action::BaseParams
- Defined in:
- lib/hanami/action/base_params.rb
Overview
Direct Known Subclasses
Constant Summary collapse
- RACK_INPUT =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
The key that returns raw input from the Rack env
'rack.input'.freeze
- ROUTER_PARAMS =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
The key that returns router params from the Rack env This is a builtin integration for Hanami::Router
'router.params'.freeze
- RACK_SESSION =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
The key that returns Rack session params from the Rack env Please note that this is used only when an action is unit tested.
'rack.session'.freeze
- REQUEST_METHOD =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
HTTP request method for Rack env
'REQUEST_METHOD'.freeze
- DEFAULT_REQUEST_METHOD =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Default HTTP request method for Rack env
'GET'.freeze
Instance Attribute Summary collapse
- #env ⇒ Object readonly private
- #raw ⇒ Object readonly private
Instance Method Summary collapse
-
#[](key) ⇒ Object?
Returns the object associated with the given key.
-
#each(&blk) ⇒ Object
Iterates through params.
-
#get(*keys) ⇒ Object, NilClass
(also: #dig)
Get an attribute value associated with the given key.
-
#initialize(env) ⇒ Params
constructor
private
Initialize the params and freeze them.
-
#to_h ⇒ ::Hash
(also: #to_hash)
Serialize params to Hash.
-
#valid? ⇒ TrueClass
Provide a common interface with Params.
Constructor Details
#initialize(env) ⇒ Params
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Initialize the params and freeze them.
64 65 66 67 68 69 |
# File 'lib/hanami/action/base_params.rb', line 64 def initialize(env) @env = env @raw = _extract_params @params = Utils::Hash.deep_symbolize(@raw) freeze end |
Instance Attribute Details
#env ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
48 49 50 |
# File 'lib/hanami/action/base_params.rb', line 48 def env @env end |
#raw ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
54 55 56 |
# File 'lib/hanami/action/base_params.rb', line 54 def raw @raw end |
Instance Method Details
#[](key) ⇒ Object?
Returns the object associated with the given key
78 79 80 |
# File 'lib/hanami/action/base_params.rb', line 78 def [](key) @params[key] end |
#each(&blk) ⇒ Object
Iterates through params
149 150 151 |
# File 'lib/hanami/action/base_params.rb', line 149 def each(&blk) to_h.each(&blk) end |
#get(*keys) ⇒ Object, NilClass Also known as: dig
Get an attribute value associated with the given key. Nested attributes are reached by listing all the keys to get to the value.
113 114 115 |
# File 'lib/hanami/action/base_params.rb', line 113 def get(*keys) @params.dig(*keys) end |
#to_h ⇒ ::Hash Also known as: to_hash
Serialize params to Hash
139 140 141 |
# File 'lib/hanami/action/base_params.rb', line 139 def to_h @params end |
#valid? ⇒ TrueClass
Provide a common interface with Params
130 131 132 |
# File 'lib/hanami/action/base_params.rb', line 130 def valid? true end |