Test Your Knowledge

Quiz

  1. How do you run migrations forward?

  2. How do you create a new migration?

  3. What should the self.down method do in a migration?

  4. What Rails data type should you use to represent currency values?

  5. How do you add a new field to a record?

Answers

  1. With the rake db:migrate command (or db:migrate in the Rake window on Heroku).

  2. To keep in line with Rails’ timestamp-based naming convention, it’s best to use script/generate migration NameOfMigration, and then edit the resulting file in the db/migrate directory.

  3. The self.down method defines what should happen if the migration is rolled back using rake db:rollback. The tables, column, and indexes created in self.up need a corresponding removal process in self.down.

  4. The :decimal type is the most precise way to keep track of money. It can keep track of cents to the right of the decimal point and will contain values with a fixed number of decimal places much more accurately than :float.

  5. New fields get created with add_column, as “fields” are represented as columns and the records that contain them as rows.

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.