Also, gerade jetzt mache ich den grundlegenden Login. In urls.py, gehe ich contrib Jetzt django:Wie erweitere ich das Django "Login" -Formular?
(r'^login/?$','django.contrib.auth.views.login',{'template_name':'login.html'}),
Das schießt es hier:
@csrf_protect
@never_cache
def login(request, template_name='registration/login.html',
redirect_field_name=REDIRECT_FIELD_NAME,
authentication_form=AuthenticationForm):
Diese Ansicht verwendet die AuthenticationForm Formen Modell:
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)
So .. mein Ziel ist es, den Benutzernamen zu ändern! Indem Sie das hinzufügen: widget = forms.TextInput(attrs={'placeholder': 'username'})
. Das ist es. Das ist alles, was ich dem Benutzernamen-Eingabefeld hinzufügen möchte. Aber ich möchte nicht die tatsächliche django forms.py-Datei ändern, da dies Teil von django contrib ist und ich fühle mich schlecht, diese Datei zu ändern.
Was mache ich? Soll ich ein Formular erstellen, das AuthenticationForm erweitert? Wenn ja, wie importiere ich das? Und wie gebe ich das als Argument über meine urls.py weiter? Ich weiß nicht, was ich machen soll.
Vielen Dank für die Zeiger auf knusprig! – rikb