Top 3 registros ordenados por um campo em trilhos
-
07-07-2019 - |
Pergunta
Em ruby ??on rails Como posso encontrar o topo 3 registros da minha mesa chamado avisos ordenado por um campo particular, no meu caso eu quero ordem pelo campo posição que é um inteiro.
Assim aparência da tabela meus avisos como este:
Qualquer ajuda seria muito apreciada.
Solução
Considerando que você tem classe Aviso ActiveRecord, este deve fazer:
Notice.find(:all, :limit => 3, :order => 'particularField')
Outras dicas
Você faria algo como:
Notice.find(:all,:order => "position", :limit => 3)
Isso traria os 3 primeiros registros ordenados por posição (neste exemplo, posições 1,2,3 ou aqueles primeira menores. Você pode alterar o valor a fim de "posição DESC" se você quiser posições 20,19,18 , por exemplo).
Boa sorte!
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow