AJAX не работает на Django и возвращает ошибку 500

Я пытаюсь отправить AJAX запрос из моего шаблона, который ведет на url и запускает функцию view. Однако, я получаю ошибку 500 Error в моей консоли. Ошибка в журнале Django говорит: TypeError: delete_appointment() missing 1 required positional argument: 'appointment_id' Мое представление также использует пользовательский декоратор, весь необходимый код ниже:

Декоратор

def user_has_delete(func, redirect_url="Home:Deny"):
    def wrapper(request, *args, **kwargs):
        if request.user.is_anonymous:
            return redirect(redirect_url)
        if request.user.is_authenticated:
            if not request.user.is_denier:
                return redirect(redirect_url)
            else:
                return func(request, *args, **kwargs)
    return wrapper

URL Pattern

path('Vet/DenyAppointment/<int:appointment_id>', views.delete_appointment)

Вид

@user_has_delete
@never_cache
def delete_appointment(request, appointment_id):
    appointment = get_object_or_404(Appointments, pk=appointment_id)
    appointment.delete()
    return redirect('Dashboard')

Шаблонная часть

{% for appointment in appointments %}
                        <div class="col-sm-12 col-lg-8 AppointmentDiv offset-sm-0 offset-lg-2 Space-b-sm">
                            <h2>{{ appointment.fullDate }}</h2>
                                <ul>
                                    <li>{{ appointment.title }}</li>
                                    <li>{{ appointment.day }}</li>
                                </ul>
                            <button type="submit" class="theme" id='{{ appointment.id }}' onclick="deleteAppointment({{ appointment.id }})">Delete Appointment</button>
                        </div>
                    {% endfor %}

AJAX

<script>
            function deleteAppointment(appointmentId) {
                $.ajax({
                    url: '/Vet/DenyAppointment/' + appointmentId,
                    type: 'GET',
                    success: function(response) {
                        window.location.href = "/Dashboard";
                    }
                });
            }
        </script>

Исправлено. Я не отправлял данные в AJAX, просто добавляя id встречи в url. Затем мне нужно было настроить мой декоратор на прием дополнительных параметров.

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