Язык поля формы модели Django не меняется - PullRequest
0 голосов
/ 07 ноября 2019

Я использую Django 2.2. и питон 3.6. Bootstrap 4. У меня есть шаблон и хрустящая форма, вставленная в шаблон. Эта форма создана из модели. В модели есть поле поля изображения.

photo = models.ImageField(upload_to="staff/", null=True, blank=True, verbose_name=_("Fotoğraf"))

Криспиформ создает поле в шаблоне, но язык, показанный в поле, английский. Но я хочу показать турецкий язык. Выбор файла и просмотр должны быть турецкими. Поэтому я изменил settings.py как;

LANGUAGE_CODE = 'tr-tur'

Но все равно написано Выберите «Файл» и «Обзор» в поле на странице.

enter image description here

Вы можете видеть на скриншоте, что все на турецком языке, кроме "Выберите файл" и "Обзор".

Ответы [ 2 ]

1 голос
/ 07 ноября 2019

«Выбрать файл» и «Обзор» не переводятся, потому что это часть полей, создаваемых при начальной загрузке.

Вы можете попытаться создать псевдокласс, как описано здесь в Перевод или настройка строки . Вкратце, как CSS-код, он должен выглядеть так:

$custom-file-text: (
  en: "Browse",
  es: "Elegir"
);
0 голосов
/ 09 ноября 2019

Проблема решена. Прежде всего, чтобы изменить часть «Выбор файла»:

Добавьте скрипт, который изменит метку textContent,

<script>
var input = document.getElementById('id_photo');
var label = input.labels[1];
label.textContent = 'Dosya Seçin'
</script>

Во-вторых, чтобы изменить часть обзора, вы должны отредактировать bootstrap. min.css и изменить пользовательский файл-метка запчасти содержимое: "Обзор" на содержимое: "Что бы вы нихочу " может быть несколько материалов: определения" Обзор ", изменить все.

...