Вывести элементы модели с привязкой по id Django

Была задача сделать динамический опросник, я сделал такое решение, для начала создаю варианты ответов "Да", "Нет", "Не знаю" и для облегчения всё это называю "ДаНетНезнаю", т.к. вопросов может быть много с этими вариантами ответов. Далее создаю сам вопрос и присваиваю ему раннее созданное "ДаНетНезнаю".Вот для наглядности, скрины соединил Теперь суть вопроса, как мне на самом сайте вывести вопрос и в что прописать в choices чтобы можно было выбрать только ответ "Да", "Нет", "Не знаю"? А если вопрос "Нация" и в админке указали ответ "Нация", то на сайте в выборе ответа можно выбрать только "Русский", "Киргиз", "Украинец". Запутался что-то) Может есть другие варианты и предложения?

#models.py

class Fields(models.Model):
field = models.CharField('Название', max_length=100)

def __str__(self):
    return self.field

class Choice(models.Model):
    field = models.CharField('Вариант ответа', max_length=100)
    choices = models.ForeignKey(Fields, on_delete=models.CASCADE, related_name='test')

def __str__(self):
    return self.field

class Question(models.Model):
    questname = models.CharField('Название вопроса', max_length=100)
    fieldstest = models.ForeignKey(to=Fields, on_delete=models.CASCADE, default=1)

def __str__(self):
    return self.questname

Далее

#views.py
def add_complaint(request):
quest = Question.objects.all()
answer = Choice.objects.all()
error = ''
if request.method == 'POST':
    form = ComplaintForm(request.POST)
    if form.is_valid():
        form.save()
        return redirect('database_home')
    else:
        error = 'Ошибка добавления'

form = ComplaintForm()
data = {'form': form, 'error': error, 'quest': quest, 'answer': answer}
return render(request, 'database/add_complaint.html', data)

HTML

{% extends 'database/layout.html' %}

{% block title %}Анкетирование{% endblock %}

{% block body %}
    <div class="add">
        <h1>Добавление нового анкетирования</h1>
        <form method="post">
            {% csrf_token %}
            {{ form.as_p }}
            {% for el in quest %}
                <div class="sear-head editContent">
                    <h>{{ el.questname }}</h>
                    {{ complaint }}
                </div>
            {% endfor %}
            {% for el in answer %}
                <div class="sear-head editContent">
                    <h>{{ el.choices }}</h>
                    {{ complaint }}
                </div>
            {% endfor %}
            <span>{{ error }}</span>
            <button class="btn btn-success" type="submit">Добавить анкетирование</button>
        </form>
    </div>
{% endblock %}

Результат сейчас

P.S. Раньше я прописывал все эти вопросы и ответы прямо в коде (скрин ниже), но сказали, что нужно сделать их динамически, раньше всё выглядело хорошо, с динамическими сложности прям Для примера, как сайт выглядел раньше, с вопросами прописанными прямо в коде

Вернуться на верх