Есть 2 модели

class DaySchedule(models.Model):
    one = models.OneToOneField(TeachLesson, related_name='one', null=True, blank=True)
    two = models.OneToOneField(TeachLesson, related_name='two', null=True, blank=True)
    three = models.OneToOneField(TeachLesson, related_name='three', null=True, blank=True)
    four = models.OneToOneField(TeachLesson, related_name='four', null=True, blank=True)
    five = models.OneToOneField(TeachLesson, related_name='five', null=True, blank=True)

class TeachLesson(models.Model):
    teacher = models.ForeignKey(Teacher, verbose_name='Преподаватель')
    lesson = models.ForeignKey(Lesson, verbose_name='Преподает')
    cabinet = models.ForeignKey(Cabinet, verbose_name='Кабинет')

Как сделать, чтоб при редактировании в админке модели DaySchedule отображался не выбор из списка TeachLesson, а пять раз по три поля, и, желательно, чтоб была проверка, если в 3 полях ничего не выбрано, TeachLesson оставлять как null.