I’d be very grateful for some help. I am a newbie working through Agile
Web D. with Rails 2nd edition.
As far as I know I have all the compatible versions of things installed
including RadRails 0.7.2. I have got up to page 81 and everything works
correctly.
I am now trying migrate/003_add_test_data.rb and have copied the code
from the website. When I do the migrate it appears to complete OK, but
when I inspect the DB, the table is empty. This is very worrying.
- Shouldn’t the migrate give an error message if it failed?
- Why is it not working?
Here is the code:
class AddTestData < ActiveRecord::Migration
def self.up
Product.delete_all
Product.create(:title => 'Pragmatic Project Automation',
:description =>
%{<p>
<em>Pragmatic Project Automation</em> shows you how to improve
the
consistency and repeatability of your project’s procedures using
automation to reduce risk and errors.
Simply put, we’re going to put this thing called a computer to
work
for you doing the mundane (but important) project stuff. That
means
you’ll have more time and energy to do the really
exciting—and difficult—stuff, like writing quality code.
:image_url => ‘/images/auto.jpg’,
:price => 29.95)
Product.create(:title => 'Pragmatic Version Control',
:description =>
%{<p>
This book is a recipe-based approach to using Subversion that
will
get you up and running quickly—and correctly. All projects
need
version control: it’s a foundational piece of any project’s
infrastructure. Yet half of all project teams in the U.S. don’t
use
any version control at all. Many others don’t use it well, and
end
up experiencing time-consuming problems.
:image_url => ‘/images/svn.jpg’,
:price => 28.50)
# . . .
Product.create(:title => 'Pragmatic Unit Testing (C#)',
:description =>
%{<p>
Pragmatic programmers use feedback to drive their development
and
personal processes. The most valuable feedback you can get while
coding comes from unit testing.
Without good tests in place, coding can become a frustrating
game of
“whack-a-mole.” That’s the carnival game where the player
strikes at a
mechanical mole; it retreats and another mole pops up on the
opposite side
of the field. The moles pop up and down so fast that you end up
flailing
your mallet helplessly as the moles continue to pop up where you
least
expect them.
:image_url => ‘/images/utc.jpg’,
:price => 27.75)
end
def self.down
Product.delete_all
end
end