Si vous avez affaire à des valeurs flottantes, il est préférable de les avoir comme un attribut au lieu d'un champ:
define_index do
# ... other fields
has height
end
les attributs sont triables par défaut (en effet, si vous ajoutez: sortable à un champ, tout ce qu'il fait est crea ting un attribut sous le capot de Thinking Sphinx), ainsi ceci devrait te permettre de trier.
Bien sûr, cela ne vous permet pas de recherche pour la hauteur, cependant, de sorte que vous aurez besoin d'un terrain ainsi:
define_index do
# ... other fields
indexes height, :as => :height_field
has height
end
J'ai donné le champ un alias, parce que vous ne pouvez pas avoir des champs et des attributs nommés la même chose. Compte tenu de tout cela, vous recherchez sur un flotteur, et à Sphinx, tous les champs sont des chaînes. Il lit 6.5 comme deux mots - 6 et 5, séparés par un point/période. Donc, je ne m'attendrais pas à ce que ce côté des choses fonctionne avec élégance, malheureusement.