Adds a cache_key method to ActiveRecord collections
Ruby
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
.document
.gitignore
Gemfile
Gemfile.lock
LICENSE
README.rdoc
Rakefile
VERSION
group_cache_key.gemspec

README.rdoc

group_cache_key

Using this gem in an application using ActiveRecord will provide you with a 'cache_key' method on collections of models.

The 'cache_key' will consist of:

  • the tableized name of the class of the first item

  • an MD5 hash of the ids in the collection

  • to_i on the max created_at date

  • to_i on the max updated_at date

The 'cache_key' should look like:

'widgets/100-81dc9bdb52d04dc20036dbd8313ed055-1256853629-1256853637'

The resulting cache_key will be different if your group is sorted differently because the MD5 hash is created according to the order given: no sorting is done to create the hash.

If your collection is empty, the cache_key will return a key with the object_id. A cache_key for an empty collection will look like:

'empty/13149280'

Built by Saturn Flyer www.saturnflyer.com

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don't break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but

    bump version in a commit by itself I can ignore when I pull)
  • Send me a pull request. Bonus points for topic branches.

Copyright

Copyright © 2009 Jim Gay. See LICENSE for details.