Теги шаблона успешно переведены, но ugettext_lazy() в утилитах не переводится

Мне успешно удалось получить trans и blocktrans для перевода текста.

Тем не мение...

У меня есть функция, определенная в utils.py, которая возвращает словарь, содержащий строки, некоторые из которых мне нужно преобразовать в текущий язык. РЕДАКТИРОВАТЬ: * Это - utils.py, который я создал в своем каталоге проекта, который вызывается представлениями для выполнения определенных вспомогательных функций в отношении dict, а затем возвращает обновленный dict

Я сделал что-то вроде этого:

    try:
     path = default_storage.save(customercode + '/' + file.name, ContentFile(file.read()))
     results['status'] = 'success'
     results['message'] = _(u'Your file has been successfully uploaded')        
    except Exception as e:
     results['status'] = 'error'
     results['message'] = _(u'There was an error uploading your file: ') + str(e)

return results

Я также добавил from django.utils.translation import ugettext_lazy as _ to the top of this utils.py file..

И этот словарь "результатов" используется в одном из моих представлений, где весь словарь после некоторой дальнейшей обработки передается в качестве переменной контекста в шаблон.

Я правильно установил перевод в.po файле. Все остальные теги шаблона переведены отлично. Только вышеперечисленные строки не переводятся.

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

ОБНОВЛЕНИЕ: я попробовал тот же самый процесс в метке, заполненной формой, и она переведена просто отлично. Это только вышеупомянутые области, где это не будет переводиться!

PS: это мой первый вопрос по stackru. Я заранее извиняюсь, если допустил ошибки, задавая этот вопрос.

1 ответ

Решение

Как я и ожидал,

Я делал очень глупую ошибку. Я получил доступ к неверной переменной в шаблоне, пытаясь напечатать переведенное значение! >_<

Но я думаю, что одна вещь, которую я узнал, это держаться подальше от проблемы, а затем возвращаться к ней после долгого времени, которое помогает. Вы должны изучить проблему снова, и это иногда помогает вам находить глупые ошибки, подобные этим!

Другие вопросы по тегам