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:
= Copier Copié!

installation:
=

Versions:

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

Propriétaires:

Auteurs:

  • Emanuele Tozzato

Total de contrôle SHA 256:

0408c75e91f48d52825955b1564f4baacda72678f9b2512d27fcc395d5c4df29

Total de téléchargements 12 515

Pour cette version 3 416

License:

aucune

Version de Ruby requise: None

Liens: