Use Nifty Generators in Rails 3

July 30, 2010

I’ve talked a lot about the Nifty Generators gem, created by Ryan Bates of Railscasts (see my introductions to nifty_layout, nifty_config, and nifty_scaffold). When I began experimenting with Rails 3 I noticed that the gem was not yet Rails 3 compatible according to RailsPlugins.org, but I’m happy to report (along with RailsPlugins.org users eggie5 and dgerton) that it’s working fine—you just need to change a few things about how you use it. Here’s what you need to do to get rolling:

1. Include Nifty Generators in your Gemfile

Unlike apps written in previous versions of Rails, your Rails 3 app needs to know you’re using Nifty Generators. Easy enough: Add the following line to your Gemfile:

  gem 'nifty-generators', '>= 0.4.0'

then install it if necessary, using Bundler:

  $ bundle install

2. Know the command line changes

This is the biggest difference, and it’s actually pretty minor. Replace the underscore in the old way of using the generator with a colon. So the old way of generating a scaffold, like

  $ script/generate nifty_scaffold book title:string author_id:integer description:text

becomes

  $ rails generate nifty:scaffold book title:string author_id:integer description:text

For a list of all four Nifty Generators’ new syntax, just type

  $ rails generate -h

Rails testing made simple

Learn to test Rails apps the way I learned, building up tests step-by-step, in Everyday Rails Testing with RSpec. Expanded to include exclusive content and a complete sample Rails application. Learn more »

Also available on Amazon.com.

blog comments powered by Disqus