Pregunta

Me han establecido dos modelos: user y post. Cada post belongs_to un user. posts también tienen etiquetas, utilizando acts_as_taggable. En UserController#show Quiero que las etiquetas de los usos de los usuarios, la clasificación de la mayoría acostumbrados a menos utilizada.

Obtener una lista de etiquetas no es difícil, pero ¿cómo puedo ordenar? Lo utilizo para encontrar las etiquetas:

@tags = []
@user.posts.each do |post|
  @tags += post.tags
end

¿alguien puede explicar cómo puedo ordenar las etiquetas? Gracias.

¿Fue útil?

Solución

se podría utilizar el método proporcionado por tag_counts plugin:

@user.posts.tag_counts

más información aquí: http://agilewebdevelopment.com/plugins/acts_as_taggable_on_steroids

EDIT:

un simple código básico para clasificar:

@tags = Hash.new(0)
@user.posts.each do |post|
  post.tags.each do |tag|
    @tags[tag] += 1 if @tags.has_key?(tag)
  end
end
# sorting
@tags.sort{|a,b| a[1] <=> b[1]}

tal vez hay una mejor manera de hacerlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top