RubyGems Navigation menu

hash_all 2.0.0

Wrapper/helper for ActiveRecord <tt>find(:all, *args)</tt>. Returns a collection of objects injected into a Hash. The attribute used as a key for the Hash should be specified as first argument. if :fetch is not specified in the arguments the whole object will be assigned as value, otherwise only the attribute spefified. You can pass in all the same arguments to this method as you can to <tt>find(:all)</tt>. Example Given the models: Feed(id: integer, state: string, name: string) Post(id: integer, feed_name: string, title: string, url: string) count the number of posts of every state. Row count is too high to use SQL JOIN. @post_per_state = {} feeds = Feed.hash_all('feed_name', :fetch => 'state') posts = Post.all(:select => 'COUNT(id), feed_name', :group => 'feed_name') posts.each do |p| @post_per_state[feeds[p.feed_name]] ||= 0 @post_per_state[feeds[p.feed_name]] += p.attributes['COUNT(id)'].to_i end => {"new york"=>6, "georgia"=>11, "new mexico"=>2, ... }

Gemfile:
= Copiar al portapapeles ¡Copiado!

instalar:
=

Versiones:

  1. 2.0.2 - February 24, 2012 (5 KB)
  2. 2.0.1 - March 31, 2011 (4,5 KB)
  3. 2.0.0 - March 31, 2011 (5,5 KB)

Propietarios:

Autores:

  • Emanuele Tozzato

SHA 256 checksum:

0408c75e91f48d52825955b1564f4baacda72678f9b2512d27fcc395d5c4df29

Total de descargas 12.518

Para esta versión 3.417

Licencias:

N/A

Versión de Ruby requerida: Ninguno

Enlace: