Как передать два параметра в url для корректной работы
Как передать два параметра в url для корректной работы через классы views (Мне кажется, что ошибка в views.py , также в шаблоне).Здесь также используется форма для передачи вопросов, это можно увидеть в html, но нужно абстрагироваться от формы views.py`
class Question(LoginRequiredMixin, DetailView):
model = Question
context_object_name = 'questions'
template_name = 'question.html'
def get_queryset(self):
return get_object_or_404(Question, quiz__slug=self.kwargs['quiz_slug'],
quiz__pk=self.kwargs['pk'])
`
question.html `
{% extends 'base.html' %}
{% load static %}
{% block content %}
{{ questions }}
<form action="{% url 'questions' quiz_slug pk %}" method="post">
{% for answer in questions.answers.all %}
<div class="form-group">
<input type="checkbox" id="{{ answer.pk }}" name="{{ answer.pk }}"
value="{{ answer.is_correct }}">
{{ answer }}
</div>
{% endfor %}
<input href="{% url 'home' %}"
class="btn btn-info btn-block badge-success"
type="submit" value="Ответить">
{% csrf_token %}
</form>
{% endblock content %}
urls.py ``
path('', views.HomeListView.as_view()),
path('category/<int:pk>', views.TestsListView.as_view(), name='tests'),
path('test/<slug:quiz_slug>/question/<int:pk>', views.Question.as_view(), name='questions'),
]
` models.py
`
class Category(models.Model):
title = models.CharField(max_length=255)
description = models.TextField(blank=True, null=True)
class Quiz(models.Model):
title = models.CharField(max_length=255)
description = models.TextField(blank=True, null=True)
slug = models.SlugField(max_length=255, default='')
category = models.ForeignKey(Category, on_delete=models.CASCADE)
class Question(models.Model):
STATUS_CHOICES = (
('one_answer', 'One_answer'),
('multiply_answers', 'Multiply_answers')
)
question = models.TextField()
question_type = models.CharField(max_length=20, choices=STATUS_CHOICES)
quiz = models.ForeignKey(Quiz, on_delete=models.CASCADE, related_name='question')
class Answer(models.Model):
answer = models.TextField()
is_correct = models.BooleanField(default=False)
question = models.ForeignKey(Question, on_delete=models.CASCADE, related_name='answer')
`