2017-03-17 1 views
1

symfony를 사용하고 있으며 번들에서 번역을 만들어야하지만 FOS User Bundle처럼 "메시지"가 아닌 다른 도메인에서 사용합니다 (그들은 FOSUserBundle 도메인 사용).symfony에서 번역 할 새 도메인을 추가하는 방법

번역본과 함께 MyBundle.en.yml 파일을 만들었지 만로드되지 않았습니다. 나는 내가이 작업을 수행 할 필요가 문서에 읽은 :

$translator->addLoader('xlf', new XliffFileLoader()); 

$translator->addResource('xlf', 'messages.fr.xlf', 'fr_FR'); 
$translator->addResource('xlf', 'admin.fr.xlf', 'fr_FR', 'admin'); 
$translator->addResource(
    'xlf', 
    'navigation.fr.xlf', 
    'fr_FR', 
    'navigation' 
); 

http://symfony.com/doc/current/components/translation.html#using-message-domains

하지만 그 어디해야합니까? 내가 번역에 대한 디버그를 실행하면

일부 조사 후

업데이트, 내가 템플릿에 내 도메인 사용하고있는 모든 번역이 누락 된 것을 말한다.

내 번역 파일이 SRC에 위치/한국 전기/번들/MyBundle/자원/번역/MyDomain.yml

I 앱/자원/번역/MyDomain.yml하지만 같은 결과에 위치에 시도

.

는 또한 캐시 (RF RM은 응용 프로그램/캐시)하지만 당신은 올바른 위치 (들)에 파일을 배치하면 여전히

답변

2

심포니가 자동으로이 작업을 수행 할 작동하지를 삭제하려고했습니다. Symfony에서 가정 한 규칙에 대한 전체 설명은 설명서에서 찾을 수 있습니다. https://symfony.com/doc/current/translation.html#translation-resource-file-names-and-locations

Best Practices-guideapp/Resources/translations/에 저장하는 것이 좋습니다. 또는 번들의 번역 폴더 (src/MyBundle/Resources/translations)에 넣을 수 있습니다.

번역기를 사용할 때 도메인을 지정해야한다는 점에 유의하십시오. 귀하의 나뭇 가지에 템플릿. 참조 :

+0

은 내가 올바르게, 나는 당신이 업데이트 된 질문 내가 자리에 게시 된 경로에서 – petekaner

+0

않았다 좀 더 테스트를 질문을 업데이트하는 모든 일을 해요 생각 2 실수 : - 디렉토리 리소스는 소문자이지만 대문자로 시작해야합니다. R - 번역 파일에서 로켈을 지정하지 않았습니다. 예 : 'MyDomain.en.yml' – dbrumann

+0

네, 맞아요! 나는 그 파일에서 그 언어를 놓쳤다. 감사! – petekaner

관련 문제