Forum: Italian Ruby user group Group by sul modello.

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Ivan M. (Guest)
on 2006-03-29 19:40
Salve a tutti,

Non sapevo dell'esistenza di un forum in italiano per ruby on rails.
Volevo sapere se qualcuno di voi conosce una qualche funzione che
permette di raggruppare i dati presi dal model. Una specie di "Group by"
insomma...

Grazie, Ivan.
Raffaele Tesi (Guest)
on 2006-03-29 20:17
(Received via mailing list)
http://wiki.rubyonrails.org/rails/pages/Calculatio...

Ivan M. <removed_email_address@domain.invalid> ha scritto:  Salve a tutti,

Non sapevo dell'esistenza di un forum in italiano per ruby on rails.
Volevo sapere se qualcuno di voi conosce una qualche funzione che
permette di raggruppare i dati presi dal model. Una specie di "Group by"
insomma...

Grazie, Ivan.

--
Posted via http://www.ruby-forum.com/.
Raffaele Tesi (Guest)
on 2006-03-29 20:17
(Received via mailing list)
http://wiki.rubyonrails.org/rails/pages/Calculations+Plugin

segui anche i link in basso

Ivan M. <removed_email_address@domain.invalid> ha scritto:  Salve a tutti,

Non sapevo dell'esistenza di un forum in italiano per ruby on rails.
Volevo sapere se qualcuno di voi conosce una qualche funzione che
permette di raggruppare i dati presi dal model. Una specie di "Group by"
insomma...

Grazie, Ivan.

--
Posted via http://www.ruby-forum.com/.
Massimiliano M. (Guest)
on 2006-03-29 20:47
(Received via mailing list)
> Volevo sapere se qualcuno di voi conosce una qualche funzione che
> permette di raggruppare i dati presi dal model. Una specie di "Group by"
> insomma...

Non ricordo se il risultato di ActiveRecord::Base#find è un Enumerable
(voglio sperarlo),
se lo è puoi usare qualcosa di simile:


tmp> cat test_categorize.rb
module Enumerable
  def categorize(&criteria)
    results = { }
    each do |element|
      category = criteria.call(element)
      results[category] ||= []
      results[category] << element
    end
    results
  end
end

names = [ 'Ugo', 'Massimiliano', 'Ido', 'Ciro', 'Ermenegildo', 'Pino' ]

names_by_category = names.categorize do |name|
  case name.length
  when 0
    :uomo_invisibile
  when 1..3
    :represso
  when 4..10
    :educato
  when 11..20
    :scostumato
  else
    :antipatico_ai_genitori
  end
end

require 'pp'
pp names_by_category

tmp> ruby test_categorize.rb
{:represso=>["Ugo", "Ido"],
 :educato=>["Ciro", "Pino"],
 :scostumato=>["Massimiliano", "Ermenegildo"]}
Antonio C. (Guest)
on 2006-03-29 21:23
(Received via mailing list)
On 3/29/06, Massimiliano M. wrote:

>   when 11..20
>     :scostumato
>   else
>     :antipatico_ai_genitori
>   end
> end
> [...]


Ahaha. Bella citazione del mitico Troisi. :-)

Antonio

PS: http://ar.rubyonrails.com/classes/ActiveRecord/Base.html

--
My Ruby blog: http://www.antoniocangiano.com
My .NET Community: http://www.visualcsharp.it
gabriele renzi (Guest)
on 2006-03-29 23:07
(Received via mailing list)
--- Massimiliano M. <removed_email_address@domain.invalid> ha
scritto:

> > Volevo sapere se qualcuno di voi conosce una
> qualche funzione che
> > permette di raggruppare i dati presi dal model.
> Una specie di "Group by"
> > insomma...
>
> Non ricordo se il risultato di
> ActiveRecord::Base#find è un Enumerable
> (voglio sperarlo),
> se lo è puoi usare qualcosa di simile:

tanto per aggiungere un'ennesima risposta:
in rails 1.1 c'è proprio Enumerable#group_by:
http://weblog.rubyonrails.com/articles/2006/03/01/...

altra alternativa, lo trovi nella libreria "facets",
che io tengo sempre sotto il cuscino :)

--
icq:  #69488917
blog: http://riffraff.blogsome.com






___________________________________
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB
http://mail.yahoo.it
Ivan M. (Guest)
on 2006-04-03 19:40
Grazie a tutti quanti

Ivan.
This topic is locked and can not be replied to.