views:

469

answers:

6

What are your favorite lesser-known gems/plugins for Rails?

This question about Rails plugins brought up only the usual suspects (Paperclip, RSpec, Shoulda, Restful Auth, etc). It'd be great to get a list going about the hidden, less popular ones that rock.

+3  A: 

I've been using cache_money a lot in projects recently. Its given us a huge performance increase

Marc Roberts
+4  A: 

I just started using App_Version. It's nice to be able to put the version of the app that your running on the bottom of your page (Like the "svn revision" number on the bottom right-hand corner of this page).

Kevin Kaske
Ahh good suggestion, I could see this coming in handy.
Corban Brook
+1  A: 

Dr. Nic's Magic Models Not that i actually use this gem on any of my projects, I just thought it was cool when it was first released. Dr. Nic also did a hack so if you made typos in your code it would guess what you meant, so very very wrong.. but funny as hell.

Corban Brook
Check the video of him showing it off: http://drnicwilliams.com/2007/03/22/meta-magic-in-ruby-presentation/
Corban Brook
+2  A: 

I'm really liking delayed_job for asynchronous tasks it's simple and effective. Been using it for async mail with great success.

paulthenerd
+1  A: 

responds_to _parent lets you do ajax-like things with file upload forms (which can't use real ajax.) But you can also use it anytime you want to send RJS to the parent window.

Also, a bit of self-promotion. I really like my plugin soundex_find, which allows you to handle misspellings and phonetic matches in auto-completers or searches.

Walt Gordon Jones
soundex_find is nice, btw. good job with that.
Brian Hogan
Thanks, it's my first open source contribution since leaving a very non-oss company. I plan to continue to get involved in different ways.
Walt Gordon Jones
+2  A: 

Another one i've found I'm using more and more is andand, this gives you guarded method invocation.

Instead of

entry.at('description') && entry.at('description').inner_text

you write

entry.at('description').andand.inner_text

It's been saving my fingers lots of typing in the last couple of projects.

Marc Roberts
Current versions of rails have .try(:method)
Andrew Vit