module MultiTenant::DatabaseStatements
Public Instance Methods
delete(arel, name = nil, binds = [])
click to toggle source
Calls superclass method
# File lib/activerecord-multi-tenant/query_rewriter.rb, line 237 def delete(arel, name = nil, binds = []) model = MultiTenant.multi_tenant_model_for_arel(arel) if model.present? && !MultiTenant.with_write_only_mode_enabled? && MultiTenant.current_tenant_id.present? arel.where(MultiTenant::TenantEnforcementClause.new(model.arel_table[model.partition_key])) end super(arel, name, binds) end
join_to_delete(delete, *args)
click to toggle source
Calls superclass method
# File lib/activerecord-multi-tenant/query_rewriter.rb, line 220 def join_to_delete(delete, *args) delete = super(delete, *args) model = MultiTenant.multi_tenant_model_for_table(delete.ast.left.table_name) if model.present? && !MultiTenant.with_write_only_mode_enabled? && MultiTenant.current_tenant_id.present? delete.where(MultiTenant::TenantEnforcementClause.new(model.arel_table[model.partition_key])) end delete end
join_to_update(update, *args)
click to toggle source
Calls superclass method
# File lib/activerecord-multi-tenant/query_rewriter.rb, line 211 def join_to_update(update, *args) update = super(update, *args) model = MultiTenant.multi_tenant_model_for_table(update.ast.relation.table_name) if model.present? && !MultiTenant.with_write_only_mode_enabled? && MultiTenant.current_tenant_id.present? update.where(MultiTenant::TenantEnforcementClause.new(model.arel_table[model.partition_key])) end update end
update(arel, name = nil, binds = [])
click to toggle source
Calls superclass method
# File lib/activerecord-multi-tenant/query_rewriter.rb, line 229 def update(arel, name = nil, binds = []) model = MultiTenant.multi_tenant_model_for_arel(arel) if model.present? && !MultiTenant.with_write_only_mode_enabled? && MultiTenant.current_tenant_id.present? arel.where(MultiTenant::TenantEnforcementClause.new(model.arel_table[model.partition_key])) end super(arel, name, binds) end