Django에서 지원하는 기능과 끝내주는 오픈소스들을 이용한 텍스트 번역 기능을 제공합니다. 소스 상에선 영어로 쓰고 텍스트 번역 기능을 이용해 번역한 텍스트로 배포하는 기능입니다.
장고의 번역 기능을 이용해 소스 상의 텍스트를 작성합니다.
장고 번역 기능 살펴보기
https://docs.djangoproject.com/ko/1.11/topics/i18n/translation/
배포하기 전 bbgo에 포함된 아래 배치파일을 실행합니다.
(bbgo) $ ./trans.sh
배치파일이 모든 소스를 스캔해 번역에 필요한 파일들을 자동으로 생성 및 업데이트해 줍니다. 웹사이트(localhost:8000)로 접속 후 관리자 아이디로 로그인하여 텍스트 관리 메뉴를 선택합니다.
Django-rosetta 에서 제공하는 대시보드에서 번역할 텍스트를 선택할 수 있습니다. 위는 영어, 아래는 한국어이고 한국어의 첫 번째 줄은 *.py, *.html 에서 사용되는 텍스트, 두 번째는 *.js 에서 사용되는 텍스트입니다. 대시보드에서 번역 안된 텍스트가 몇 개인지 확인할 수 있습니다.
번역할 항목을 선택하면 텍스트 별로 변역을 추가, 수정할 수 있게 됩니다. 모두 수정 후 저장해 주세요.
javascript 번역을 수정했을 경우엔 배치파일을 한 번 더 실행해 주세요.
(bbgo) $ ./trans.sh
djangojs는 캐시를 지원하지 않아 매번 페이지를 열 때 마다 새로운 djangojs 파일을 생성하므로 서버에 부담을 줄 수 있습니다. 위 처럼 배치파일을 한 번 더 실행하면 djangojs 를 새로운 파일로 생성하게 되고 페이지를 열 때 새로운 djangojs 파일을 생성하는 대신 미리 생성한 파일을 제공하며, 클라이언트에서는 이를 캐시하여 로딩 속도도 높일 수 있습니다.
생성된 파일은 static/jsi18n 디렉토리에 저장됩니다.