1
我想返回一個帶有奧蘭的國家的分頁列表,來自阿塞拜疆,而不是津巴布韋之後。換句話說,我想忽視特殊字符,並簡單地將科特迪瓦的「A」和「ô」視爲常規的「o」。有沒有Rails方法或gem來做到這一點,或者我需要執行某種自定義SQL(如果是這樣,什麼樣的)?Rails使用自然排序順序排序查找和排序
我想返回一個帶有奧蘭的國家的分頁列表,來自阿塞拜疆,而不是津巴布韋之後。換句話說,我想忽視特殊字符,並簡單地將科特迪瓦的「A」和「ô」視爲常規的「o」。有沒有Rails方法或gem來做到這一點,或者我需要執行某種自定義SQL(如果是這樣,什麼樣的)?Rails使用自然排序順序排序查找和排序
看看How do I replace accented Latin characters in Ruby?。
您應該能夠按其標準化名稱對國家進行排序。
喜歡的東西:
@countries.sort{|x,y| x.name.chars.normalize(:kd).gsub(/[^\x00-\x7F]/n,'').downcase.to_s <=> y.name.chars.normalize(:kd).gsub(/[^\x00-\x7F]/n,'').downcase.to_s}