1
我在一個視圖中的下列行:如何對i18n翻譯的列上的activerecord結果集進行排序?
<%= f.select(:province_id, options_from_collection_for_select(Province.find(:all, :conditions => { :country_id => @property.country_id }, :order => "provinces.name ASC"), :id, :name) %>
在省模型我有以下:
def name
I18n.t(super)
end
問題是:名稱字段被轉換(通過省模型)和該訂單是通過英文名稱上的activerecord完成的。非英文結果集可能會錯誤地按這種方式排序。我們在比利時有一個名爲'Oost-Vlaanderen'的省份。在英語中是「東佛蘭德」排序:)
我需要這樣的事情並不好,但它不工作:?
<%= f.select(:province_id, options_from_collection_for_select(Province.find(:all, :conditions => { :country_id => @property.country_id }, :order => "provinces.I18n.t(name) ASC"), :id, :name) %>
什麼是解決這個最好的辦法 。正如你可能已經注意到,我的編碼知識是非常有限的,對不起爲
是的,這是做的伎倆,謝謝! – 2010-05-20 22:25:24