Forum: Ruby on Rails rake db:migrate as in Agile Web Development with Rails

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
XBone (Guest)
on 2007-01-29 20:07
(Received via mailing list)
Reading Agile Web D. with Rails (2nd edition)
Working with InstantRails on Windows XP Professional Sevice Pack 2

I am trying to run a migration using the command
  rake db:migrate
from the command prompt.

This is the error I'm getting:

rake aborted!
You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occured while evaluating nil.[]

Any ideas why is this occurring and how I can solve this?

Thanks
Chris Johnston (Guest)
on 2007-01-29 20:11
(Received via mailing list)
On 1/29/07, XBone <removed_email_address@domain.invalid> wrote:
>
> rake aborted!
> You have a nil object when you didn't expect it!
> You might have expected an instance of Array.
> The error occured while evaluating nil.[]


I had a similar error. In my case, the problem was that I was trying to
alter an existing table by adding a foreign key reference to a table
that
had existing data in it. I had a previous migration that added some test
data for me. Specifically, for me, the problem was that I was trying to
explicitly add the constraint in MySQL. I removed the constraint and let
rails handle the relationship (probably not the best idea, but I am
still
learning and playing) and the error went away.

Chris
--
www.fuzzylizard.com

You know you've achieved perfection in design, Not when you have nothing
more to add, But when you have nothing more to take away.
— Antoine de Saint-Exupery
Guest (Guest)
on 2007-01-29 20:47
Hi.  Thanks for your reply.

However, I have not added constraints through other database interfaces.

My migration is named 002_add_price.rb and this is its contents:

class AddPrice < ActiveRecord::Migration
  def self.up
    add_column :products, :price, :decimal, :precision => 8, :scale =>
2, :default => 0
  end

  def self.down
    remove_column :products, :price
  end
end
Drew O. (Guest)
on 2007-01-29 20:55
Guest wrote:
> Hi.  Thanks for your reply.
>

I had the same issue and it was related to not running Rails 1.2. All
examples in the book assume you're using this version of Rails, not sure
if this will be helpful in your case.
(Guest)
on 2007-01-29 21:04
(Received via mailing list)
There was the exact same thread on here a few days ago....

Upgrading to 1.2 should fix your problems.

Best,
Jamie

On Jan 29, 10:55 am, Drew O. <removed_email_address@domain.invalid>
Scott (Guest)
on 2007-01-30 19:12
(Received via mailing list)
Yup, I just ran into this yesterday and it was because I was not
running 1.2.1. Upgrade and you are good to go.

Scott
This topic is locked and can not be replied to.