mksmvnv
@mksmvnv

Как настроить интернационализацию в Django для плейсхолдера внутри структуры widget_tweaks?

Сам код:

{% extends 'base.html' %}
{% load static %}
{% load i18n %}

{% block title %}{% translate "Авторизация" %}{% endblock %}

{% block content %}
<h1 class="text-center m-5">{% translate "Авторизация" %}</h1>
{% load widget_tweaks %}
<form action="{% url 'login' %}" method="post">
    <label for="{{ form.username.id_for_label }}">{% translate "Логин" %}:</label>
    {{ form.username|add_class:"form-control mb-2 mt-2"|attr:"placeholder:Введите логин" }}
    <label for="{{ form.password.id_for_label }}">{% translate "Пароль" %}:</label>
    {{ form.password|add_class:"form-control mb-2"|attr:"placeholder:Введите пароль" }}
    {{ form.non_field_errors }}
    {% csrf_token %}
    <button type="submit" class="btn btn-success mt-3">{% translate "Войти" %}</button>
</form>
<p class="mt-5">{% translate "Забыли пароль?" %} <a href="{% url 'password_reset' %}">{% translate "Восстановить пароль" %}</a></p>
<p class="mt-2">{% translate "Ещё нет аккаунта?" %} <a href="{% url 'register' %}">{% translate "Зарегистрироваться" %}</a></p>
{% endblock %}

{% block scripts %}
{% endblock %}

Возможно я перегрузил простую форму и если вы знаете более элегантные варианты решения, то буду рад выслушать.

А так, вопрос в следующем. В форме авторизации есть 2 плейсхолдера, к которым нужно применить translate тег джинджы для отработки перевода. Пробовал реализовать через чат GPT, но предлагает нерабочие варианты или явную чушь.
  • Вопрос задан
  • 50 просмотров
Решения вопроса 1
mksmvnv
@mksmvnv Автор вопроса
Переписал нужные шаблоны под кастомные формы, и там использовал gettext lazy. Но если все же кто-то знает, как можно использовать i18n и widget tweaks совместно, пишите.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы