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
. (In Heroku, just choose
Console from the gear menu, and it will bring up a console in a separate
window.) 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, ...
Get Learning Rails 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.