Although this application is approaching the point beyond which much generated code becomes more of a hassle than a help, it makes sense to create one last round of scaffolding, replacing the application from the previous chapter. After this, we’ll work within the same application for a while, as this kind of tearing down and rebuilding is only a good idea at the very, very beginning of a project.
To get started, create a new application. Move or rename the old
guestbook application to get it out of the way, and then run
rails guestbook. In Heroku, just create a new
application. Then, run the following clunky mess from the command line
at the top level of the newly created application:
script/generate scaffold Person name:string secret:string country:string
email:string description:text can_send_email:boolean graduation_year:integer
body_temperature:float price:decimal birthday:date favorite_time:time
In Heroku, you’ll select Generate from the gear menu and enter all
of that except for the
script/generate. This kind of long list of
data structures in the scaffolding is annoying. It’s hard to type, and
what’s worse, if you find that you made a mistake after you’ve already
modified the generated code, you have a painful choice.
You can either rerun the scaffolding generation and lose all your changes to the logic, or you can modify the migration, the model, and the views by hand. Rails scaffolding generators just overwrite the old code—there’s no ...