Salve lista.
Ennesima domanda da luser…
Ho un semplice programmino in rails nel quale gli utenti inseriscono dei
dati. Naturalmente devono anche vederli; di default sono in ordine
cronologico, dal più vecchio al più recente. Per immediatezza, però,
dovrebbero essere messi al contrario, cioè con i più recenti in
alto/nella prima pagina visualizzata (se sono più di un tot) e gli ultmi
verso il fondo.
Penso sia un’emerita boiata, ma non riesco a capire quale sia il comendo
e dove vada inserito… tutti gli esempi/spiegazioni che ho trovato
fanno acrobazie incredibili sugli ordinamenti, ma nessuno
specifica/esamina come ribaltare il risultato '
Ah, naturalmente i dati risiedono in un database mysql, se l’informazone
dovesse servire.
Grazie come sempre per la disponibilità e la pazienza
Daneel O.
Tra le opzioni del metodo find aggiungi:
:order => “created_on DESC”
Ovviamente esiste una forma più elegante del tipo:
class Blog < ActiveRecord::Base
has_many :posts
has_many :most_recent_posts,
:class_name => ‘Post’,
:order => ‘created_on DESC’
end
Così puoi usare direttamente: Blog.most_recent_posts
Ciao.
blog: www.lucaguidi.com
Speaker at:
Rails To Italy '07 Conference
Oct, 26-27 2007 - Pisa
www.railstoitaly.org
Luca G. wrote:
Tra le opzioni del metodo find aggiungi:
:order => “created_on DESC”
[ecc.]
Ecco, quando non si segue la regola: “non programmare il pomeriggio
mentre stai facendo altre n cose, che non sei multitasking” '
Ho provato ieri questa cosa, ma non funzionava… semplicemente perché
non mi ero accordo che “created_on” era il nome di un campo della
tabella e non un comando. Cheffiguuura!!!
Beh, ora sono sicuro che mi si è impresso indelebilmente in memoria XD
Grazie ancora e a presto.
Daneel O.