Class: Plutonium::Action::ConditionContext
- Inherits:
-
SimpleDelegator
- Object
- SimpleDelegator
- Plutonium::Action::ConditionContext
- Defined in:
- lib/plutonium/action/condition_context.rb
Overview
Evaluation scope for an action's condition: proc.
Exposes the contextual record as both object and record, and delegates
everything else to the request's view context — the object render
components forward their helpers to — so a condition can use current_user,
params, request, allowed_to?, resource_record!, etc. directly, exactly
like the condition: procs on inputs/displays/columns.
Delegating to the view context (not a render component) matters: the component exposes params/request only as PRIVATE methods, which a delegator can't forward; the view context exposes them publicly.
record/object is the row/shown record for record and
collection-record actions, and nil for resource/bulk actions (no single
record in scope) — so guard with object&.… in conditions shared across
action kinds.
Instance Attribute Summary collapse
-
#record ⇒ Object
(also: #object)
readonly
Returns the value of attribute record.
Instance Method Summary collapse
-
#initialize(view_context, record) ⇒ ConditionContext
constructor
A new instance of ConditionContext.
Constructor Details
#initialize(view_context, record) ⇒ ConditionContext
Returns a new instance of ConditionContext.
27 28 29 30 |
# File 'lib/plutonium/action/condition_context.rb', line 27 def initialize(view_context, record) super(view_context) @record = record end |
Instance Attribute Details
#record ⇒ Object (readonly) Also known as: object
Returns the value of attribute record.
24 25 26 |
# File 'lib/plutonium/action/condition_context.rb', line 24 def record @record end |