43 lines
1.2 KiB
Python
43 lines
1.2 KiB
Python
from django import forms
|
|
from django.contrib.auth.forms import UserCreationForm
|
|
from django.contrib.auth.forms import AuthenticationForm
|
|
from .models import User
|
|
from django import forms
|
|
|
|
from django import forms
|
|
from django.contrib.auth.models import User
|
|
|
|
|
|
class UserForm(forms.ModelForm):
|
|
password = forms.CharField(widget=forms.PasswordInput)
|
|
|
|
class Meta:
|
|
model = User
|
|
fields = ["username", "email", "password"]
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
super().__init__(*args, **kwargs)
|
|
for field in self.fields.values():
|
|
field.widget.attrs.update({"class": "form-control"})
|
|
|
|
def form_valid(self, form):
|
|
user = form.save(commit=False)
|
|
user.set_password(form.cleaned_data['password'])
|
|
user.save()
|
|
return super().form_valid(form)
|
|
|
|
|
|
class LoginForm(AuthenticationForm):
|
|
username = forms.CharField(
|
|
widget=forms.TextInput(attrs={
|
|
"class": "form-control",
|
|
"placeholder": "Enter username"
|
|
})
|
|
)
|
|
password = forms.CharField(
|
|
widget=forms.PasswordInput(attrs={
|
|
"class": "form-control",
|
|
"placeholder": "Enter password"
|
|
})
|
|
)
|