I’m following a tutorial here to get some columns in my database. I
generated a model called ‘product’ then I edited
‘db/001_create_products.rb’ to have a few columns but when I try to
migrate I get this error:
bio4054059:depot rmorourk$ rake db:migrate
(in /Users/rmorourk/Sites/depot)
== CreateProducts: migrating
– create_table(:products)
rake aborted!
wrong number of arguments (1 for 2)
(See full trace by running task with --trace)
bio4054059:depot rmorourk$
I copied the code exactly for the 001_create_products.rb not really sure
what it means by wrong number of arguments… any advise would be
welcomed happily!
What does 001_create_products.rb look like?
(BTW, if your migration filenames look like that, your tutorial may be
for an older version of Rails. If you use script/generate migration,
newer versions of Rails will use a timestamp, so that the filename
might be something like 20081217040235_create_products.rb . That’s
not a big deal in itself – either naming scheme will work – but it
does imply that you may be using a slightly outdated tutorial.)
Best,
Marnen Laibow-Koser
[email protected]
http://www.marnen.org
What does 001_create_products.rb look like?
It looks like this - is there something wrong with it?
class CreateProducts < ActiveRecord::Migration
def self.up
create_table :products do |t|
t.column :title; :string
t.column :description; :text
t.column :image_url; :string
end
end
def self.down
drop_table :products
end
end
Ryan O. wrote:
t.column :description; :text
t.column :image_url; :string
end
end
def self.down
drop_table :products
end
end
I believe those are supposed to be commas not semi-colons after the
column names.
Norm