Class: MongoidAbility::AccessibleQueryBuilder
- Inherits:
-
Struct
- Object
- Struct
- MongoidAbility::AccessibleQueryBuilder
- Defined in:
- lib/mongoid_ability/accessible_query_builder.rb
Instance Attribute Summary collapse
-
#ability ⇒ Object
Returns the value of attribute ability.
-
#action ⇒ Object
Returns the value of attribute action.
-
#base_class ⇒ Object
Returns the value of attribute base_class.
-
#options ⇒ Object
Returns the value of attribute options.
Class Method Summary collapse
Instance Method Summary collapse
-
#call ⇒ Object
=====================================================================.
- #conditions ⇒ Object
-
#initialize(base_class, ability, action, options = {}) ⇒ AccessibleQueryBuilder
constructor
A new instance of AccessibleQueryBuilder.
Constructor Details
#initialize(base_class, ability, action, options = {}) ⇒ AccessibleQueryBuilder
7 8 9 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 7 def initialize(base_class, ability, action, = {}) super(base_class, ability, action, ) end |
Instance Attribute Details
#ability ⇒ Object
Returns the value of attribute ability
2 3 4 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 2 def ability @ability end |
#action ⇒ Object
Returns the value of attribute action
2 3 4 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 2 def action @action end |
#base_class ⇒ Object
Returns the value of attribute base_class
2 3 4 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 2 def base_class @base_class end |
#options ⇒ Object
Returns the value of attribute options
2 3 4 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 2 def @options end |
Class Method Details
.call(*args) ⇒ Object
3 4 5 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 3 def self.call(*args) new(*args).call end |
Instance Method Details
#call ⇒ Object
=====================================================================
13 14 15 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 13 def call base_class.criteria.where(conditions) end |
#conditions ⇒ Object
17 18 19 |
# File 'lib/mongoid_ability/accessible_query_builder.rb', line 17 def conditions { '$and' => [{ '$or' => [closed_types_condition, open_types_and_ids_condition] }, closed_ids_condition] } end |