Module: RailsConsoleAi::BuiltinGuards::WriteBlocker
- Defined in:
- lib/rails_console_ai/safety_guards.rb
Overview
Blocks INSERT, UPDATE, DELETE, DROP, CREATE, ALTER, TRUNCATE
Constant Summary collapse
- WRITE_PATTERN =
/\A\s*(INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|TRUNCATE)\b/i- TABLE_PATTERN =
/\b(?:INTO|FROM|UPDATE|TABLE|TRUNCATE)\s+[`"]?(\w+)[`"]?/i
Instance Method Summary collapse
- #exec_delete(sql, *args, **kwargs) ⇒ Object
- #exec_insert(sql, *args, **kwargs) ⇒ Object
- #exec_query(sql, *args, **kwargs) ⇒ Object
- #exec_update(sql, *args, **kwargs) ⇒ Object
- #execute(sql, *args, **kwargs) ⇒ Object
Instance Method Details
#exec_delete(sql, *args, **kwargs) ⇒ Object
248 249 250 251 |
# File 'lib/rails_console_ai/safety_guards.rb', line 248 def exec_delete(sql, *args, **kwargs) rails_console_ai_check_write!(sql) super end |
#exec_insert(sql, *args, **kwargs) ⇒ Object
243 244 245 246 |
# File 'lib/rails_console_ai/safety_guards.rb', line 243 def exec_insert(sql, *args, **kwargs) rails_console_ai_check_write!(sql) super end |
#exec_query(sql, *args, **kwargs) ⇒ Object
238 239 240 241 |
# File 'lib/rails_console_ai/safety_guards.rb', line 238 def exec_query(sql, *args, **kwargs) rails_console_ai_check_write!(sql) super end |
#exec_update(sql, *args, **kwargs) ⇒ Object
253 254 255 256 |
# File 'lib/rails_console_ai/safety_guards.rb', line 253 def exec_update(sql, *args, **kwargs) rails_console_ai_check_write!(sql) super end |
#execute(sql, *args, **kwargs) ⇒ Object
233 234 235 236 |
# File 'lib/rails_console_ai/safety_guards.rb', line 233 def execute(sql, *args, **kwargs) rails_console_ai_check_write!(sql) super end |