[ruby-it] Collection ordinata di un'associazione

Pietro Giorgianni giorgian a gmail.com
Lun 2 Feb 2009 15:39:45 CET


2009/2/2 Alessandro Del coco <menestra a tele2.it>:
> Ciao ragazzi,
>
> volevo sapere se c'è un modo rapido e veloce per riprendere la
> collection di un'associazione già ordinata in base ad un dato specifico.
>
> Mi spiego meglio illustrando un esempio:
> io ho una rubrica dove ci sono più articoli. Questi articoli hanno un
> attributo che mi dice se devono essere pubblicati o meno e la data di
> creazione dello stesso.
> Io vorrei semplicemente rirpendere tutti gli articoli dove lo
> stato=pubblicato ordinati per data di creazione in maniera decrescente.
>
> Se io facessi rubrica.articoli le condizioni sopra descritte non sono
> rispettate in qquanto prenderei tutti gli articoli e basta associati a
> quella determinata rubrica.

puoi usare un named_scope, tipo:
# articolo
class Article < ActiveRecord::Base
  named_scope :ordinati, :order => 'data_creazione DESC'
  ...
end

poi potrai usare rubrica.articles.ordinati

leggo che puoi anche scrivere:

class Rubrica < ActiveRecord::Base
  has_many :articles, :order => 'data_creazione DESC'
end

e così rubrica.articles li restituisce già ordinati.
però questa cosa non l'ho ancora provata.


More information about the Ml mailing list