[ruby-it] Ordinare risultati find in base a campo esterno
Giorgio Arcella
a-mj a hotmail.it
Mer 2 Dic 2009 16:00:16 CET
Buondė!
Ho due quesiti da proporre!
il primo, molto semplice:
c'č un modo pių UMANO di scrivere questo ciclo?
><h1>News pių commentate</h1>
> <% i = 5 %>
> <% for neew in @neews_piu_commentate %>
> <p><b><a href="neews/<%= neew.id%>">
> <%=h neew.titolo %>
> </a></b>
> <span style="font-size: 10px; font-style: italic;">(<%= >neew.comments.size >%> commenti)
> </span>
> </p>
> <% i -= 1 %>
> <% if i== 0 %>
> <% break %>
> <% end %>
> <% end %>
so che fa schifo, ma la programmazione non č il mio pane quotidiano(e
poi x me l'importante č sempre che funzioni, e almeno questo funziona
;p)
secondo:
ho il modello neews, che has_many :comments, e il modello comments, che
belongs_to :neew
In quel ciclo di prima io stamperei a video le prime 5 news pių
commentate, (ovvero che hanno neew.comments.size maggiore). Il problema
č come ordinare l'array da cui tirar fuori i commenti in base al numero
di commenti presente nella news...
nella index del controller delle news le ho provate tutte:
> @neews_piu_commentate = Neew.find(:all, :order =>
> '@neews_piu_commentate.comments.size DESC')
oppure
> @neews_piu_commentate = Neew.find(:all, :include => .comments, :order =>
> 'newsComments.size DESC')
oppure
> @neews_piu_commentate = Neew.find(:all, :order => 'comments.size DESC')
ma non funziona proprio!
Se qualcuno sa darmi una mano grazie mille!
Giorgio
--
Posted via http://www.ruby-forum.com/.
More information about the Ml
mailing list