From 5342752e4936488980f496a39fd1dd9124f34c12 Mon Sep 17 00:00:00 2001 From: Ivan Kaziev Date: Tue, 9 Apr 2024 19:04:26 +0300 Subject: [PATCH] Create films model --- CineSync/films/models.py | 48 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/CineSync/films/models.py b/CineSync/films/models.py index 71a8362..4ea0108 100644 --- a/CineSync/films/models.py +++ b/CineSync/films/models.py @@ -1,3 +1,49 @@ from django.db import models +from django.core.validators import MinValueValidator -# Create your models here. + +class Genre(models.Model): + name = models.CharField( + 'Название', + help_text='Название жанра', + max_length=100, + null=False, + ) + + class Meta: + db_table = 'films_genres' + verbose_name = 'Жанр' + verbose_name_plural = 'Жанры' + + +class Film(models.Model): + name = models.CharField( + 'Название', + help_text='Название фильма', + max_length=100, + null=False, + ) + + duration = models.IntegerField( + 'Продолжительность', + help_text='Продолжительность фильма (в минутах)', + validators=[MinValueValidator(0)], + null=False, + ) + + release_date = models.DateField( + 'Дата релиза', + help_text='Дата выхода фильма', + ) + + genres = models.ManyToManyField( + Genre, + verbose_name='Жанры', + related_name='films', + help_text='Жанры фильма', + ) + + class Meta: + db_table = 'films_films' + verbose_name = 'Фильм' + verbose_name_plural = 'Фильмы'