Class: ActivityNotification::ORM::Mongoid::Subscription
- Inherits:
-
Object
- Object
- ActivityNotification::ORM::Mongoid::Subscription
- Includes:
- Association, SubscriptionApi, Mongoid::Attributes::Dynamic, Mongoid::Document, Mongoid::Timestamps
- Defined in:
- lib/activity_notification/orm/mongoid/subscription.rb
Overview
Subscription model implementation generated by ActivityNotification.
Class Method Summary collapse
-
.filtered_by_target ⇒ Mongoid::Criteria<Subscription>
Selects filtered subscriptions by target instance.
-
.uniq_keys ⇒ Array<String>
Selects unique keys from query for subscriptions.
Instance Method Summary collapse
-
#target ⇒ Object
Belongs to target instance of this subscription as polymorphic association.
-
#where ⇒ Mongoid::Criteria<Subscription>
Selects filtered subscriptions by type of the object.
-
#with_target ⇒ Mongoid::Criteria<Subscription>
Includes target instance with query for subscriptions.
Methods included from SubscriptionApi
#as_json, convert_time_as_hash, #earliest_order, #earliest_order!, #earliest_subscribed_order, filtered_by_key, filtered_by_options, #key_order, #latest_order, #latest_order!, #latest_subscribed_order, #optional_target_names, #subscribe, #subscribe_to_email, #subscribe_to_optional_target, #subscribing_to_optional_target?, to_optional_target_key, to_optional_target_subscribed_at_key, to_optional_target_unsubscribed_at_key, #unsubscribe, #unsubscribe_to_email, #unsubscribe_to_optional_target
Methods included from Association
belongs_to_composite_xdb_record, belongs_to_polymorphic_xdb_record, filtered_by_association, has_many_composite_xdb_records, has_many_polymorphic_xdb_records, has_many_records, #update
Methods included from Mongoid::Document
Class Method Details
permalink .filtered_by_target ⇒ Mongoid::Criteria<Subscription>
Selects filtered subscriptions by target instance.
ActivityNotification::Subscription.filtered_by_target(@user)
is the same as
@user.subscriptions
53 |
# File 'lib/activity_notification/orm/mongoid/subscription.rb', line 53 scope :filtered_by_target, ->(target) { filtered_by_association("target", target) } |
permalink .uniq_keys ⇒ Array<String>
Selects unique keys from query for subscriptions.
64 65 66 67 68 |
# File 'lib/activity_notification/orm/mongoid/subscription.rb', line 64 def self.uniq_keys # distinct method cannot keep original sort # distinct(:key) pluck(:key).uniq end |
Instance Method Details
permalink #target ⇒ Object
Belongs to target instance of this subscription as polymorphic association.
19 |
# File 'lib/activity_notification/orm/mongoid/subscription.rb', line 19 belongs_to_polymorphic_xdb_record :target |
permalink #where ⇒ Mongoid::Criteria<Subscription>
Selects filtered subscriptions by type of the object. Filtering with ActivityNotification::Subscription is defined as default scope.
44 |
# File 'lib/activity_notification/orm/mongoid/subscription.rb', line 44 default_scope -> { where(_type: "ActivityNotification::Subscription") } |
permalink #with_target ⇒ Mongoid::Criteria<Subscription>
Includes target instance with query for subscriptions.
57 |
# File 'lib/activity_notification/orm/mongoid/subscription.rb', line 57 scope :with_target, -> { } |