Текст шаблона Django не переводится с помощью LocaleMiddleware

Как и в теме, у меня есть две строки для перевода:

<div class="front-quote">
<p> {% blocktrans %} My, ludzie, mamy skłonność doświadczania samych siebie jako czegoś oddzielnego od otaczającego nas Wszechświata. Jest to łudzenie naszej świadomości, jak zamykanie sie w więzieniu. Nasze zadanie to wyzwolić sie z tego więzienia poprzez rozszerzenie naszego współczucia na wszystkie żyjące istoty i Naturę w całym jej pięknie. Staranie się aby to osiągnąć to nasza jedyna ścieżka do wyzwolenia i jedyna podstawa prawdziwego}wewnętrznego spokoju i poczucia bezpieczeństwa {% endblocktrans %}</p>
        <p class="signature">Albert Einstein</p>
    </div>
    <div class="front-1"> {% blocktrans %} Jeśli jesteś <span class="front-emphasis">idealistą</span>{% endblocktrans%} </div>

И второй почему-то переводится, а первый нет... Я перепробовал все, что мог придумать: изменил теги шаблона с {% trans %} на {% blocktrans %}, вставил весь текст одной строкой в ​​одну строку. .. Это просто не работает... Единственная необычная вещь, которую я заметил, это то, что в файле .po повторяется и закомментирован блок кода, который не переводится, это выглядит так:

#: biostrefa/templates/pages/home.html:8
#, fuzzy
#| msgid ""
#| " My, ludzie, mamy skłonność doświadczania samych siebie jako czegoś "
#| "oddzielnego od otaczającego nas Wszechświata. Jest to łudzenie naszej "
#| "świadomości, jak zamykanie sie w więzieniu. Nasze zadanie to wyzwolić sie "
#| "z tego więzienia poprzez rozszerzenie naszego współczucia na wszystkie "
#| "żyjące istoty i Naturę w całym jej pięknie. Staranie się aby to osiągnąć "
#| "to nasza jedyna ścieżka do wyzwolenia i jedyna podstawa prawdziwego}"
#| "wewnętrznego spokoju i poczucia bezpieczeństwa"
msgid ""
" My, ludzie, mamy skłonność doświadczania samych siebie jako czegoś "
"oddzielnego od otaczającego nas Wszechświata. Jest to łudzenie naszej "
"świadomości, jak zamykanie sie w więzieniu. Nasze zadanie to wyzwolić sie z "
"tego więzienia poprzez rozszerzenie naszego współczucia na wszystkie żyjące "
"istoty i Naturę w całym jej pięknie. Staranie się aby to osiągnąć to nasza "
"jedyna ścieżka do wyzwolenia i jedyna podstawa prawdziwego}wewnętrznego "
"spokoju i poczucia bezpieczeństwa "
msgstr ""
"We human beings tend to experience  ourselves as something separate from the "
"whole we call The Universe. This is actually an optical dellusion of our "
"conscience, is like a prison for us. Our task is to free ourselves from this "
"prison by widening our circle of compassion to embrace all living creatures "
"and the whole nature in its beauty. This striving for such an achevement is "
"a path to our liberation and the only true fundation of our inner peace and "
"security."

#: biostrefa/templates/pages/home.html:11
msgid " Jeśli jesteś <span class=\"front-emphasis\">idealistą</span>"
msgstr "If you are <span class=\"front-emphasis\"> idealist </span>"

Но я понятия не имею, что это значит... Пытался удалить его, но в следующий раз он вернулся.

python manage.py makemessages -l en

работает

Любая помощь будет принята с благодарностью :)

Это сборка django 2.0.6 с шаблоном cookiecuter-django.

ОБНОВИТЬ:

Перевод работает, пока я не добавлю LocaleMiddleware (закомментировано здесь):

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    #'django.middleware.locale.LocaleMiddleware',
    'django.middleware.common.CommonMiddleware',

person oskar333    schedule 13.06.2018    source источник
comment
Мне кажется, что это проблема с интервалом: в вашем шаблоне много пробелов для siebie jako, так что это не полностью соответствует msgid.   -  person Willem Van Onsem    schedule 13.06.2018
comment
При этом обычно переводы не такие длинные. Один стремится разделить его на части, каждая из которых может быть переведена независимо.   -  person Willem Van Onsem    schedule 13.06.2018
comment
Как писать без пробелов?? Между словами только одиночные пробелы..   -  person oskar333    schedule 13.06.2018
comment
проблема не в этом, проблема в том, что интервал в шаблоне не совпадает с интервалом в переводах.   -  person Willem Van Onsem    schedule 13.06.2018
comment
На самом деле вы не должны использовать такие переводы. Используйте короткую строку в качестве ключа и имейте файлы перевода для английского и польского языков.   -  person Daniel Roseman    schedule 13.06.2018
comment
Это была ошибка при перемещении текста в сообщение stackoverflow, теперь исправлено. Текст в шаблоне представляет собой одну строку с одинарными пробелами между словами.   -  person oskar333    schedule 13.06.2018
comment
@Daniel Roseman Исходный текст на польском языке в шаблоне, и у меня есть файл перевода на английский язык. Нужен ли мне еще один файл перевода для польского?? Как?   -  person oskar333    schedule 13.06.2018


Ответы (1)


Нечеткий знак на вашем первом переводе (за которым следует предыдущий исходный текст) указывает на то, что исходный текст был изменен, поэтому вам необходимо удалить нечеткую строку (и предыдущий текст):

#: biostrefa/templates/pages/home.html:8
msgid ""
" My, ludzie, mamy skłonność doświadczania samych siebie jako czegoś "
"oddzielnego od otaczającego nas Wszechświata. Jest to łudzenie naszej "
"świadomości, jak zamykanie sie w więzieniu. Nasze zadanie to wyzwolić sie z "
"tego więzienia poprzez rozszerzenie naszego współczucia na wszystkie żyjące "
"istoty i Naturę w całym jej pięknie. Staranie się aby to osiągnąć to nasza "
"jedyna ścieżka do wyzwolenia i jedyna podstawa prawdziwego}wewnętrznego "
"spokoju i poczucia bezpieczeństwa "
msgstr ""
"We human beings tend to experience  ourselves as something separate from the "
"whole we call The Universe. This is actually an optical dellusion of our "
"conscience, is like a prison for us. Our task is to free ourselves from this "
"prison by widening our circle of compassion to embrace all living creatures "
"and the whole nature in its beauty. This striving for such an achevement is "
"a path to our liberation and the only true fundation of our inner peace and "
"security."

#: biostrefa/templates/pages/home.html:11
msgid " Jeśli jesteś <span class=\"front-emphasis\">idealistą</span>"
msgstr "If you are <span class=\"front-emphasis\"> idealist </span>"
person julio    schedule 13.06.2018
comment
Спасибо, Хулио, я почти уверен, что пробовал это раньше, и это не сработало, но теперь это работает :) - person oskar333; 15.06.2018
comment
К сожалению, он перестает работать, когда я добавляю LocaleMidleware... есть идеи? - person oskar333; 21.06.2018
comment
LocaleMiddleware позволяет пользователю выбрать язык, который он предпочитает, как указано в документацию. Если Джанго считает, что вы поляк, вы получите польский текст. Один из способов проверить, работает ли он, — использовать интернационализацию в Шаблоны URL. Надеюсь, поможет :) - person julio; 04.07.2018
comment
Кроме того, не забудьте правильно настроить LOCALE_PATHS, чтобы он указывал на ваш каталог переводов. - person julio; 04.07.2018
comment
дело в том, что второй, меньший блок текста переводится как надо, а первый, больший - нет... так что это не может быть проблемой LOCALE_PATHS, верно? и оба переводятся, пока я не добавлю LocaleMiddleware... - person oskar333; 15.07.2018