Module: Kasket::ReloadAssociationMixin
- Defined in:
- lib/kasket/reload_association_mixin.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
14 15 16 |
# File 'lib/kasket/reload_association_mixin.rb', line 14 def self.included(base) base.alias_method_chain :reload, :kasket_clearing end |
Instance Method Details
#reload_with_kasket_clearing(*args) ⇒ Object
3 4 5 6 7 8 9 10 11 12 |
# File 'lib/kasket/reload_association_mixin.rb', line 3 def reload_with_kasket_clearing(*args) if loaded? clear_local_kasket_indices if respond_to?(:clear_local_kasket_indices) else target_class = proxy_reflection.[:polymorphic] ? association_class : proxy_reflection.klass Kasket.cache.delete_matched_local(/^#{target_class.kasket_key_prefix}/) if target_class.respond_to?(:kasket_key_prefix) end reload_without_kasket_clearing(*args) end |