instance method
while_preventing_writes
Ruby on Rails 7.0.10
Since v6.1.7.10Signature
while_preventing_writes(enabled = true, &block)
Prevent writing to the database regardless of role.
In some cases you may want to prevent writes to the database even if you are on a database that can write. while_preventing_writes will prevent writes to the database for the duration of the block.
This method does not provide the same protection as a readonly user and is meant to be a safeguard against accidental writes.
See READ_QUERY for the queries that are blocked by this method.
Parameters
-
enabledopt = true -
blockblock
Source
# File activerecord/lib/active_record/connection_handling.rb, line 238
def while_preventing_writes(enabled = true, &block)
if ActiveRecord.legacy_connection_handling
connection_handler.while_preventing_writes(enabled, &block)
else
connected_to(role: current_role, prevent_writes: enabled, &block)
end
end
Defined in activerecord/lib/active_record/connection_handling.rb line 238
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::ConnectionHandling