Group by sul modello


#1

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.


#2

http://wiki.rubyonrails.org/rails/pages/Calculations+Plugin/versions/17

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/.


#3

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/.


#4

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”]}


#5

On 3/29/06, Massimiliano M. wrote:

when 11…20
:scostumato
else
:antipatico_ai_genitori
end
end
[…]

Ahaha. Bella citazione del mitico Troisi. :slight_smile:

Antonio

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


My Ruby blog: http://www.antoniocangiano.com
My .NET Community: http://www.visualcsharp.it


#6

Grazie a tutti quanti

Ivan.


#7

— 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/new-in-rails-enumerable-group_by-and-array-in_groups_of

altra alternativa, lo trovi nella libreria “facets”,
che io tengo sempre sotto il cuscino :slight_smile:


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


Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB
http://mail.yahoo.it