developer tip

__init__.py 파일에 대한 번역을 저장할 로케일 경로를 찾을 수 없습니다.

copycodes 2020. 8. 30. 08:51
반응형

__init__.py 파일에 대한 번역을 저장할 로케일 경로를 찾을 수 없습니다.


Django 앱을 번역하려고합니다. {% trans %}내 템플릿에 문자열을 만들었습니다 . 그러나 내 앱 폴더에서 다음 명령을 실행하면 오류 메시지가 나타납니다.

$ django-admin.py makemessages -l fr 
CommandError: Unable to find a locale path to store translations for file __init__.py`

내가 뭘 잘못 했어?


먼저을 사용하여 locale폴더 를 만들어야합니다 mkdir locale. 앱 폴더 내에서 명령을 실행하는 경우 locale해당 앱 폴더 내에 폴더 가 필요 합니다.


실제로 로케일 폴더의 위치를 ​​구성 할 수 있습니다. settings.py에서 다음을 추가하십시오.

LOCALE_PATHS = (
    PROJECT_ROOT + '/website/locale', )

그런 다음 번역하려는 각 언어에 대한 폴더를 만듭니다.

mkdir -p website/locale/de

문제는 명령이 앱 디렉토리가 아니라 프로젝트 디렉토리에서 실행된다는 것입니다. 문서의이 스 니펫은이를 설명합니다.

먼저을 사용하여 locale폴더 를 만들어야합니다 mkdir locale.

./manage.py makemessages[…] 현재 디렉토리 의 전체 소스 트리 에서 실행되고 번역 용으로 표시된 모든 문자열을 가져옵니다. conf / locale (Django 트리) 또는 locale (프로젝트 및 애플리케이션 용) 디렉토리에 메시지 파일을 생성 (또는 업데이트)합니다.

따라서 앱 디렉토리에서 명령을 실행합니다.

$ cd app
$ django-admin makemessages -l <locale>

… 또는을 사용하여 프로젝트 전체 로케일 디렉토리를 정의하고 거기에서 기본 디렉토리에서 LOCALE_PATHS실행할 수 있습니다 makemessages.

어느 쪽이든 ./locale/디렉토리가 있는지 확인하고 다음 을 사용하여 생성해야합니다.

$ mkdir locale

그렇지 않은 경우.

참고 URL : https://stackoverflow.com/questions/24937133/unable-to-find-a-locale-path-to-store-translations-for-file-init-py

반응형