Django модель разделена на 3 субмодели - разрешен ли способ сделать это? - PullRequest
0 голосов
/ 25 января 2020

Я работаю над системой бронирования в кинотеатрах и хочу что-то попросить. У меня есть 3 модели:

Mov ie - основная модель, представляющая mov ie, Movie_dates - внешний ключ для Mov ie, представляющий различные даты / время (один mov ie может повторяться много раз в течение недели), row_and_seats - модель, представляющая зарезервированные места, внешний ключ для Movie_dates

Как вы видите, мое видение немного широкое - Mov ie, даты, места. Мне было интересно, если этот процесс может быть упрощен? Или, по крайней мере, подтверждение того, что этот путь разрешен в терминах «хороших привычек» - я новичок в django :) Оцените!

class Movies(models.Model):
    title = models.CharField(max_length=100)
    age = models.CharField(choices=AGE_CATEGORY, max_length=2)
    kind = models.CharField(choices=MOVIE_CATEGORY, max_length=3)
    price = models.FloatField()
    description = models.TextField()

    def __str__(self):
        return self.title

    def absolute(self):
        return reverse("movie", kwargs={
            'pk':self.pk
        })

    def order(self):
        return reverse("movie-order", kwargs={
            'pk':self.pk
        })

    class Movie_dates(models.Model):
        movie = models.ForeignKey(Movies, on_delete=models.CASCADE)
        date = models.DateTimeField()

        def __str__(self):
            return(f"{self.movie.title}:{self.date}")

    class rows_and_seats(models.Model):
        movie = models.ForeignKey(Movie_dates, on_delete=models.CASCADE)
        user = models.ForeignKey(User, on_delete=models.CASCADE)
        row = models.CharField(max_length = 1)
        number = models.IntegerField()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...