From eb16203995105ad13a7c57e31640dab186409f29 Mon Sep 17 00:00:00 2001 From: andrei Date: Mon, 22 Apr 2024 21:35:29 +0500 Subject: [PATCH] =?UTF-8?q?=D0=BF=D0=BE=D1=87=D0=B8=D0=BD=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=B2=D0=B2=D0=BE=D0=B4=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85?= =?UTF-8?q?=20=D0=B2=20=D0=BF=D1=80=D0=BE=D1=84=D0=B8=D0=BB=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CineSync/films/admin.py | 5 +++++ CineSync/films/models.py | 3 +-- CineSync/templates/users/profile.html | 4 ++-- CineSync/users/forms.py | 9 ++++++--- CineSync/users/views.py | 2 ++ 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/CineSync/films/admin.py b/CineSync/films/admin.py index 4ab5481..b0ea300 100644 --- a/CineSync/films/admin.py +++ b/CineSync/films/admin.py @@ -9,6 +9,7 @@ class FilmAdmin(admin.ModelAdmin): list_display = [ Film.name.field.name, Film.duration.field.name, + Film.image.field.name, 'get_image', ] @@ -21,6 +22,10 @@ class FilmAdmin(admin.ModelAdmin): Film.actors.field.name, ] + list_editable = [ + Film.image.field.name, + ] + def get_image(self, obj): return mark_safe( f" Выйти Сменить пароль - {% endblock content %} - \ No newline at end of file + +{% endblock content %} \ No newline at end of file diff --git a/CineSync/users/forms.py b/CineSync/users/forms.py index f60bcdf..37a7d99 100644 --- a/CineSync/users/forms.py +++ b/CineSync/users/forms.py @@ -1,5 +1,6 @@ from django import forms from django.contrib.auth import get_user_model +from django.forms import DateInput, ModelForm from django.contrib.auth.forms import ( AuthenticationForm, PasswordChangeForm, @@ -8,7 +9,6 @@ from django.contrib.auth.forms import ( UserChangeForm, UserCreationForm, ) -from django.forms import DateInput from users.models import Profile @@ -65,18 +65,21 @@ class SignUpForm(UserCreationForm): fields = ('username', 'email') -class ProfileForm(forms.ModelForm): +class ProfileForm(ModelForm): def __init__(self, *args, **kwargs) -> None: super().__init__(*args, **kwargs) for field in self.visible_fields(): field.field.widget.attrs['class'] = 'form-control' - class Meta(forms.ModelForm): + class Meta(ModelForm): model = Profile fields = [ model.birthday.field.name, model.image.field.name, ] + widgets = { + 'birthday': DateInput(attrs={'type': 'date'}, format='%Y-%m-%d'), + } class CustomUserChangeForm(UserChangeForm): diff --git a/CineSync/users/views.py b/CineSync/users/views.py index 2f4d8b5..9525b95 100644 --- a/CineSync/users/views.py +++ b/CineSync/users/views.py @@ -36,6 +36,7 @@ def signup(request): def profile(request): profile_form = ProfileForm( request.POST or None, + request.FILES or None, instance=request.user.profile, ) user_form = UserForm( @@ -58,3 +59,4 @@ def profile(request): 'user': request.user, }, ) +