Задать вопрос
@old_qqw

Как вывести определенные записи в поле формы Django?

У меня есть форма, которая формируется из моделей

class Supervisor(models.Model):
    name = models.CharField(max_length=255, verbose_name='ФИО руководителя')
    degree = models.CharField(max_length=255, verbose_name='Ученая степень')

class Topic(models.Model):
    title = models.CharField(max_length=255, verbose_name='Название темы')
    supervisor = models.ForeignKey(Supervisor, on_delete=models.CASCADE, verbose_name='ФИО руководителя')
    reserved_status = models.BooleanField(verbose_name='Статус резервирования')

class Record(models.Model):
    student_name = models.CharField(max_length=255, verbose_name='ФИО студента')
    supervisor_name = models.ForeignKey(Supervisor, on_delete=models.CASCADE, verbose_name='ФИО руководителя')
    topic_title = ChainedForeignKey(
        Topic,
        chained_field="supervisor_name",
        chained_model_field="supervisor",
        show_all=False,
        auto_choose=True,
        sort=True,
    )


Как мне в форме, формируемой из таблиц, вывести в поле "topic_title" темы, у которых в модели Topic поле reserved_status стоит как False?

Пытался в forms.py сделать так
self.fields['topic_title'].queryset = Record.objects.filter(supervisor_name__topic__reserved_status=False)

но бесполезно
  • Вопрос задан
  • 269 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы