mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 15:18:01 +00:00
Add Prevent Writes With A Sandboxed Rails Console as a Rails til
This commit is contained in:
@@ -10,7 +10,7 @@ pairing with smart people at Hashrocket.
|
||||
|
||||
For a steady stream of TILs, [sign up for my newsletter](https://tinyletter.com/jbranchaud).
|
||||
|
||||
_1150 TILs and counting..._
|
||||
_1151 TILs and counting..._
|
||||
|
||||
---
|
||||
|
||||
@@ -723,6 +723,7 @@ _1150 TILs and counting..._
|
||||
- [Perform SQL Explain With ActiveRecord](rails/perform-sql-explain-with-activerecord.md)
|
||||
- [Polymorphic Path Helpers](rails/polymorphic-path-helpers.md)
|
||||
- [Pretend Generations](rails/pretend-generations.md)
|
||||
- [Prevent Writes With A Sandboxed Rails Console](rails/prevent-writes-with-a-sandboxed-rails-console.md)
|
||||
- [Query A Single Value From The Database](rails/query-a-single-value-from-the-database.md)
|
||||
- [Read In Environment-Specific Config Values](rails/read-in-environment-specific-config-values.md)
|
||||
- [Read-Only Models](rails/read-only-models.md)
|
||||
|
||||
24
rails/prevent-writes-with-a-sandboxed-rails-console.md
Normal file
24
rails/prevent-writes-with-a-sandboxed-rails-console.md
Normal file
@@ -0,0 +1,24 @@
|
||||
# Prevent Writes With A Sandboxed Rails Console
|
||||
|
||||
I often open a `rails console` to play around with some data and make sure I
|
||||
understand how some models can be instantiated while respecting their
|
||||
associations. There are plenty of times where I've created some data in the
|
||||
`development` database that doesn't need to be there. It may even be incomplete
|
||||
data from a failed experiment.
|
||||
|
||||
This data accumlates and clutters up the database.
|
||||
|
||||
One way to avoid this is by running the console in a sandboxed mode. Include
|
||||
the `--sandbox` flag when starting up a session to do this.
|
||||
|
||||
```bash
|
||||
$ rails console --sandbox
|
||||
Loading development environment in sandbox (Rails 5.2.6)
|
||||
Any modifications you make will be rolled back on exit
|
||||
[1] pry(main)>
|
||||
```
|
||||
|
||||
This wraps the session in a transaction so that any writes to the database can
|
||||
be rolledback afterward.
|
||||
|
||||
[source](https://dev.to/citizen428/rails-quick-tips-1-console-sandbox-4k0c)
|
||||
Reference in New Issue
Block a user