Давайте также переведем формы проекта.
В форме BookCreateForm не используются метки(label) полей формы. Вместо них, в полях, используются плейсхолдеры, которые указываю в какие поля вводить соответствующие данные книги. Теперь давайте переведем их.
Отредактируйте файл forms.py приложения books, отметив необходимые для перевода плейсхолдеры в полях формы BookCreateForm, как показано ниже:
from django.forms import ModelForm, CharField, TextInput
from .models import Book
from django.utils.translation import gettext_lazy as _ # new
class BookCreateForm(ModelForm):
title = CharField(required=False, widget=TextInput(attrs={"class": "clrtxt", "placeholder": _("Title")}))
author = CharField(required=False, widget=TextInput(attrs={"class": "clrtxt", "placeholder": _("Author")}))
price = CharField(required=False, widget=TextInput(attrs={"class": "clrtxt", "placeholder": _("Price")}))
class Meta:
model = Book
fields = ['title', 'author', 'price']
Вы задали для перевода плейсхолдеры Title, Author и Price для полей, которые отображаются в форме добавления новой книги.
В форме BookEditForm не используются метки полей формы, а вместо плейсхолдеров загружаются данные редактируемой книги - перевод данной формы не требуется.