Вот кусок из html, чекбокс из которого я и зочу получить во view:
<form method="post" id="connectRoomForm" action="{% url 'make_connection_request' %}" >
<div class="modal-body">
<div class="mb-3">
{% csrf_token %}
<label for="InputRoomCode" class="form-label">Код комнаты</label>
<input type="text" class="form-control" id="InputRoomCode" aria-describedby="InputRoomCodeHelp" name="room">
</div>
<div class="mb-3 form-check">
<input type="checkbox" class="form-check-input" id="exampleCheck1" name="my_checkbox">
<label class="form-check-label" for="exampleCheck1">Подключиться как зритель</label>
</div>
<button type="button" id="connectButton" class="btn btn-outline-secondary">Отсканируйте QR Код комнаты</button>
<button type="submit" class="btn btn-primary">Подключиться</button>
</form>
<script>
document.addEventListener('DOMContentLoaded', function() {
var connectButton = document.getElementById('connectButton');
var inputRoomCode = document.getElementById('InputRoomCode');
connectButton.addEventListener('click', function() {
var roomCode = inputRoomCode.value;
// Проверяем, если roomCode не пустой
if (roomCode.trim() !== '') {
window.location.href = '/room/generate_qr_code/' + roomCode + '/';
} else {
// Если roomCode пустой, выводим сообщение об ошибке
alert('Код комнаты не может быть пустым.');
}
});
});
</script>
в этом представлении я могу словить my_checkbox, и уже на основе этого делать дальнейшие действия:
def make_connection_request(request):
if request.method == 'POST':
try:
room_code = request.POST.get('room')
# Получите текущего пользователя (CustomUser)
user = request.user
# Найдите комнату по её коду
room = Rooms.objects.get(code=room_code)
my_checkbox = request.POST.get('my_checkbox')
# Преобразуйте значение чекбокса в тип bool
my_checkbox = my_checkbox == 'on'
а в этом представлении не могу его словить:
def make_qr_connection_request(request, code):
if request.method == 'GET':
# Получите текущего пользователя (CustomUser)
user = request.user
# Найдите комнату по её коду
room = Rooms.objects.get(code=code)
...
Почему и как это исправить? Я так понимаю, это связано с get-методом.