module Arsi::Relation
Attributes
Public Instance Methods
Source
# File lib/arsi/relation.rb, line 23 def delete_all(*) with_relation_in_connection { super } end
Calls superclass method
Source
# File lib/arsi/relation.rb, line 27 def update_all(*) with_relation_in_connection { super } end
Calls superclass method
Source
# File lib/arsi/relation.rb, line 7 def without_arsi if block_given? raise "Use without_arsi in a chain. Don't pass it a block" end dup.tap(&:without_arsi!) end
Source
# File lib/arsi/relation.rb, line 14 def without_arsi! @without_arsi = true end
Source
# File lib/arsi/relation.rb, line 18 def without_arsi? return @without_arsi if defined?(@without_arsi) && @without_arsi !arsi_scopeable? end
Private Instance Methods
Source
# File lib/arsi/relation.rb, line 34 def arsi_scopeable? @model.columns.any? { |c| Arsi::SCOPEABLE_REGEX.match?(c.name) } end
Source
# File lib/arsi/relation.rb, line 38 def with_relation_in_connection @model.connection.arsi_relation = self yield ensure @model.connection.arsi_relation = nil end