Пишу генератор тестов, дошел до момента генерации рандомных вопросов из БД и столкнулся с тем, что мне выдает все варианты ответов из других вопросов. Как это можно сделать через фильтр?
Вьюшка
def get_test(request):
que = Questions.objects.order_by('?')[:5]
answer = Answer.objects.filter()
return render(request, 'flashcards/detail2.html', {'que': que, 'answer': answer})
Модельки
class Questions(models.Model):
name = models.CharField(max_length=150, db_index=True)
questions = models.TextField(max_length=1500, blank=True)
available = models.BooleanField(default=True)
class Answer(models.Model):
question = models.ForeignKey(Questions, on_delete=models.CASCADE)
text = models.CharField(verbose_name='Ответ', max_length=250)
right = models.BooleanField(verbose_name='Правильный', default=False)
HTML
<div class="container">
{% for que in que %}
<div class="row row-cols-1 row-cols-sm-2 row-cols-md-1 g-3">
<div class="col">
<div class="card shadow-sm">
<div class="card-body">
<p class="card-text">{{ que.questions }}</p>
{% for answer in answer %}
<div class="custom-control custom-radio">
<input type="radio" id="customRadio1" name="customRadio" class="custom-control-input">
<label class="custom-control-label" for="customRadio1">{{ answer.text}}</label>
</div>
{% endfor %}
</div>
</div>
</div>
</div>
{% endfor %}
</div>
Что выдает на странице