2017-02-07 6 views
0

에서 중첩 된 클래스와 human_attribute_name` 사용. 는 이미이 (방법) 호출은`내가 클래스는이 모듈

I18n.translate('activerecord.attributes.import/log.results', {:count=>1, :default=>[:"attributes.results", "Results"]}) 

로 끝납니다하지만 번역 파일을 작성하는 방법을 모르는 것으로 나타났다. 는 YML

cs: 
    activerecord: 
    attributes: 
     import/log: 
     results: "Výsledky běhu" 

{ 
    cs: { 
    activerecord: { 
     attributes: { 
     'import\/log': { 
      results: "Výsledky běhu" 
     } 
     } 
    } 
    } 
} 

아무것도 작동하지 않습니다 시도 루비 해시를 시도했다. 아이디어가 있으십니까?

+1

YAML이 옳은 것처럼 보입니다. 해당 요청 또는 irb 세션의 현재 로케일이 실제로 'cs'입니까? 또한 새로운 로케일 파일이고 웹 요청을 통해이를 테스트하는 경우 각 요청 전에 레일스가 새 변환 파일을 선택하지 않기 때문에 서버를 다시 시작하는 것을 잊지 마십시오. –

+0

예, 로캘은 'cs'입니다 (ar.attributes 번역이 올바르게 표시되지 않음). 그리고 오래된 로켈 파일이라도 서버를 다시 시작했습니다. – Foton

+0

activerecord 키가 다른 번역 파일에 존재하는 변경 사항이 있습니까? I18n은 YAML 키를 병합하지 않으므로 다른 키가있을 경우이 키를 재정의 할 수 있으며 이러한 속성은 고려되지 않았습니다. –

답변

0

어딘가에서 실수를했습니다. @Alexanders의 의견을받은 후, 나는 처음부터 보았습니다. Yaml 버전 import/log:가 작동합니다.

아마도 나는 서버를 다시 시작하지 않고 새로운 파일에서 Yamy 번역을 시도한 다음 capybara 테스트를 통해 다른 버전 (현재 잘못된 버전)을 확인했습니다.

Alexander, 대단히 감사합니다.