Есть ли способ изменить метку поля имени пользователя на странице авторизации пользователя? - PullRequest
0 голосов
/ 30 декабря 2018

Прямо сейчас страница входа выглядит следующим образом

Я хочу изменить метку поля имени пользователя на Название команды

Примечание: я использую встроенный LoginView

Ответы [ 2 ]

0 голосов
/ 03 марта 2019

Просто измените текст метки вашего поля имени пользователя следующим образом:

 class LoginForm(ModelForm):
    class Meta:
        model = YourModel
        fields = ['username','password']

    def __init__(self, *args, **kwargs):
        super(LoginForm, self).__init__(*args, **kwargs)

        for fieldname in ['username']:
            self.fields[fieldname].label = 'Email'
0 голосов
/ 30 декабря 2018

Согласно документации LoginView имеет атрибут с именем authentication_form (обычно это просто класс формы).По умолчанию AuthenticationForm.

Вы можете создать класс формы, который наследуется от AuthenticationForm, установить метку поля имени пользователя и присвоить его своему атрибуту LoginView over authentication_form.

forms.py

from django import forms    
from django.contrib.auth.forms import AuthenticationForm, UsernameField


class CustomAuthenticationForm(AuthenticationForm):
    username = UsernameField(
        label='Team Name',
        widget=forms.TextInput(attrs={'autofocus': True})
    )

views.py

from django.contrib.auth.views import LoginView

from .forms import CustomAuthenticationForm


class CustomLoginView(LoginView):
    authentication_form = CustomAuthenticationForm
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...