Quindi, ora sto facendo il login di base. In urls.py, vado a Django contrib login:Come estendere il modulo di "accesso" di Django?
(r'^login/?$','django.contrib.auth.views.login',{'template_name':'login.html'}),
che spara a qui:
@csrf_protect
@never_cache
def login(request, template_name='registration/login.html',
redirect_field_name=REDIRECT_FIELD_NAME,
authentication_form=AuthenticationForm):
Questo punto di vista utilizza il modello di forme AuthenticationForm:
class AuthenticationForm(forms.Form):
"""
Base class for authenticating users. Extend this to get a form that accepts
username/password logins.
"""
username = forms.CharField(label=_("Username"), max_length=30)
password = forms.CharField(label=_("Password"), widget=forms.PasswordInput)
Quindi .. il mio obiettivo è quello di cambiare il nome utente! Aggiungendo a questo: widget = forms.TextInput(attrs={'placeholder': 'username'})
. Questo è tutto. Questo è tutto ciò che voglio aggiungere alla casella di inserimento del nome utente. Ma, non voglio cambiare il vero file django forms.py, dato che fa parte del contributo di django e mi sento male a cambiare quel file.
Cosa devo fare? Devo creare un modulo che estende AuthenticationForm? Se sì, come posso importarlo? E come posso passarlo come argomento tramite la mia urls.py? Io non so cosa fare.
Grazie per il puntatore a croccante! – rikb