2014-08-28 5 views
2

내 모델 번역에는 보석 globalizeglobalize_accessors을 사용합니다.모델에서 전역 화 된 필드의 목록을 가져 오는 방법은 무엇입니까?

# model.rb 
class Model < ActiveRecord::Base 
    translates :title, :description 
    globalize_accessors 
end 

내가 그들을 루프 형태로 필드 목록 즉 [:title, :description]을 retreive 수 있도록하려면 예를 들면 다음과 같습니다.

내가 찌를 수있는 유일한 방법은 #globalize_attribute_names 메서드입니다. 그러나 원래 제목별로 정렬 로케일로 번역 된 필드 목록을 반환

[:title_en, :title_es, :title_xx, :description_en, ... ] 

그래서, 질문은 - 내가 translates에서 지정한 필드의 목록을 얻을 수있는 방법이 있나요?

내가 가지 이런 식으로 고정하지만 아주 좋은되지 않습니다 :

def translates 
    globalize_attribute_names.map do |name| 
     name[/(\w+)_\w{2}\z/] 
     Regexp.last_match[1] 
    end.uniq 
    end 

답변

5

는 그것이 밝혀 :

#translated_attribute_names