Отображение элементов по категориям в Django
Есть производители телефонов и ноутбуков, как при выборе категории "Телефоны" передать id, чтобы в списке отображались только телефоны? Уже сколько вопросов посмотрел, всё равно не понял, может есть и другие методы, как это сделать?
Вообще мне этот choicetest нужно отображать на сайте, то есть тут админ выбирает категорию смартфоны.. А у пользователя уже сразу должен отображаться список с марками только смартфонов
#models.py
class Field(models.Model):
field = models.CharField('Название', max_length=100)
def __str__(self):
return self.field
class Choice(models.Model):
field = models.CharField('Вариант ответа', max_length=100)
questchoice = models.ForeignKey(to=Field, on_delete=models.CASCADE, default=1)
def __str__(self):
return self.field
class Question(models.Model):
questname = models.CharField('Название вопроса', max_length=100)
fieldtest = models.ForeignKey(to=Field, on_delete=models.CASCADE, default=1)
choicetest = models.ForeignKey(to=Choice, on_delete=models.CASCADE, default=1)
def __str__(self):
return self.questname
#views.py
def add_complaint(request):
answer = Question.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, 'answer': answer}
return render(request, 'database/add_complaint.html', data)
#html
{% block title %}Анкетирование{% endblock %}
{% block body %}
<div class="add">
<h1>Добавление нового анкетирования</h1>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
{% for el in choice %}
<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. Скажу сразу данные взял для примера, так как на деле создается опрос для скрининга с вопросами, связи сделаны так, потому что есть много вопросов с одинаковым выбором ответа "Да" "Нет" и др. Чтобы всё это облегчить создал промежуточную модель, теперь надо чтобы врач указывал в админке Fieldtest и id передавалось в choicetest и там уже выводился определенный список
