undefined method `time_zone=’ for # (NoMethodError)

Problem:

I faced this error on OS X – Leopard when I updated my gems and created a new rails project. The problem is that Leopard ships with gem pointing to http://gems.rubyonrails.org ….or you could be on a different platform with the same issue.

Solution:

Uninstall Rails (Currently 2.0.2 is the latest release)…so anythig > 2.0.2 should be removed.

1. Remove all versions > 2.0.2 (or latest release) of rails (or all other versions if you don’t use them: sudo gem uninstall rails)

2. Make sure the source is pointing to “http://gems.rubyforge.org/” by running gem source. If it is pointing to “http://gems.rubyonrails.org”, remove it by typing the following: sudo gem remove -r “http://gems.rubyonrails.org”

3. Run: sudo gem install rails -v 2.0.2 to install the latest release version

Remember to recreate your rails project for any new projects as they create files that cause problems. For older projects, just making sure the right version is installed should work.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s