2012-04-10 80 views
4

我有一系列太陽黑子問題,並排序時遇到問題。 主要問題是使用帶有口音的巴西詞。例如,對於一組名稱爲:太陽黑子,Solr,order_by,編碼

  • 阿爾貝託
  • 安娜
  • 瑪麗亞
  • 阿爾瓦羅

名稱阿爾瓦羅,總是出現在列表的通話ORDER_BY後結束方法。

這是列名我的類別設置:

class Student < ActiveRecord::Base 
searchable do 
    text(:name) 
    text(:code) 
    string :name_sort do 
    name 
    end 
end 

def search(options) 
    students = Student.search do 
     fulltext(options[:data]) 
     order_by :name_sort 
    end 
    students.results 
end 
end 

誰能幫助? 感謝 路易斯

回答

6

你可以嘗試索引

class Student < ActiveRecord::Base 
    searchable do 
    text(:name) 
    text(:code) 
    string :name_sort do 
     I18n.transliterate name 
    end 
    end 

    def search(options) 
    students = Student.search do 
     fulltext(options[:data]) 
     order_by :name_sort 
    end 
    students.results 
    end 
end 
+0

感謝安德烈在使用transliterate。它工作正常。 – 2012-04-10 21:05:19