Working with Rails from the Console
Rails is so thoroughly web-facing that it can be difficult to imagine working with it from
the command line, but it does indeed offer script/console
. When you run script/console
rather than script/server
, Rails starts up a special
environment using the Interactive Ruby Shell (irb) instead of firing up a web server. This
shell has the full context of your application, so you can load data from your databases,
play with models, and generally take a look around.
Note
You can, if you want, have script/console
and script/server
running at the same time
in different windows.
The console shell lets you interact with your application from the command line with the full powers of Ruby at your disposal. Most Ruby books include a lot more detail about irb, some even running all of their examples there, but in Rails it’s good mostly for playing with models and testing methods.
To get started, try running script/console --sandbox
in one of your applications, say the final students/courses application from
Chapter 9. You’ll see something like:
SimonMacBook:students001c simonstl$ script/console --sandbox
Loading development environment in sandbox (Rails 2.1.0)
Any modifications you make will be rolled back on exit
>>
If you actually want to make changes to your database, you can leave off the --sandbox
option (which can be abbreviated
-s
). For the first few visits, it feels safer to know that none of the changes made from the console will last beyond the console session. ...
Get Learning Rails: Live Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.