Django

Django 국제화

i18n, gettext, 번역 문자열, locale 미들웨어, 언어 감지, 번역 파일

20 면접 질문·
Senior
1

Django에서 문자열을 번역 가능하도록 표시하려면 어떤 함수를 사용해야 합니까?

답변

gettext 함수는 일반적으로 _ (밑줄) 별칭으로 임포트하며, Django에서 번역 가능한 문자열을 표시하는 표준 방법입니다. 활성 언어에 해당하는 메시지 카탈로그에서 문자열의 번역을 조회하고, 사용 가능한 경우 번역된 버전을 반환합니다.

2

Django에서 gettext()와 gettext_lazy()의 차이점은 무엇입니까?

답변

gettext_lazy()는 문자열로 변환될 때에만 평가되는 프록시 객체를 반환하며, 이는 모듈 수준에서 정의되는 번역(models나 forms 등)에 필수적입니다. gettext()는 호출 시점에 즉시 번역을 평가하므로, 언어가 아직 결정되지 않은 경우 문제가 됩니다.

3

각 요청에 대해 언어를 활성화하는 역할을 하는 Django 미들웨어는 무엇입니까?

답변

LocaleMiddleware는 URL 접두사, 쿠키, 브라우저의 Accept-Language 헤더, LANGUAGE_CODE 설정 등 여러 소스를 확인하여 사용자가 선호하는 언어를 결정하기 위해 요청을 검사합니다. 그런 다음 요청이 진행되는 동안 해당 언어를 활성화합니다.

4

소스 코드에서 번역 가능한 문자열을 추출하는 Django 명령어는 무엇입니까?

5

번역 파일 .po를 바이너리 .mo 파일로 컴파일하는 명령어는 무엇입니까?

+17 면접 질문

다음 면접을 위해 Django을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기