Как хранить / создавать данные с несколькими датами для одного и того же расписания - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть модель расписания, как показано ниже: -

class time_table(models.Model):

    username = models.ForeignKey(User,db_column="username", on_delete=models.CASCADE,)

    sem_section = models.ForeignKey(sem_sections, db_column = "sem_section",on_delete=models.CASCADE,)

    subject_id = models.ForeignKey(subjects,db_column="subject_id", on_delete=models.CASCADE,)

    day_name = models.ForeignKey(days_ref, db_column = "days_ref",on_delete=models.CASCADE,)

    hour_no = models.ForeignKey(hours, db_column = "hour_no",on_delete=models.CASCADE,)

    def __str__(self):

        ret = str(self.username) +' takes ' + str(self.sem_section) + " class " + str(self.subject_id) + " on " + str(self.hour_no) + " on " + str(self.day_name);

        return ret

    class Meta:

        constraints = [
            models.UniqueConstraint(fields=['sem_section', 'day_name', 'hour_no'], name='Allotment_check')
        ]

Мне нужно создать несколько записей, которые повторяются для каждого вставляемого кортежа, как если бы я вставил слот на понедельник 4-й час, имея какую-то тему он должен быть создан для нескольких повторяющихся дат всего года или семестра. Любые предположения о том, как настроить код или любой дополнительный код, чтобы добавить для достижения этой цели. Я использую Postgres для базы данных.

1 Ответ

0 голосов
/ 16 апреля 2020

Вы можете использовать Django bulk_create вместе с (python) списком для создания нескольких объектов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...