Метод удаления AJAX добавляет два параметра маршрута в LARAVEL

Я использую метод удаления Laravel с AJAX, чтобы удалить вопрос, когда он удаляется, идет к localhost/upwork_project/questions который содержит все вопросы, когда я нажимаю на кнопку «читать дальше» любого вопроса, URL выглядит следующим образом localhost/upwork_project/questions/questions/my-question-slug и ошибка 404 не найдена из-за двойного параметра questions/questions но когда я создаю вопрос или редактирую его, он не добавляет никаких дополнительных параметров, и все работает отлично, но когда я удаляю любой вопрос, он переходит на страницу индекса вопроса и делает это дерьмо.
Мой запрос AJAX:

$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
url: $(this).attr('action'),
type: 'DELETE',
success: function(data) {
if (data == 'question_deleted') {
window.location.href = './';
}
else if (data == 'question_deletion_error') {
$('.invalid-feedback').fadeIn('fast');
$('.question_deletion_error').html('Ops! there is an error.')
}
},
});

и мой код кнопки «читать дальше»:

<a href="questions/{{ $question->question_slug }}" class="btn btn-primary btn-sm">Continue Reading</a>

0

Решение

Таким образом, вы будете удивлены, что ответ, вы пропускаете / в вашем URL.

Я полагаю, у вас есть эти вопросы на /questions страницы, так что вам нужно будет изменить это:

<a href="questions/{{ $question->question_slug }}" class="btn btn-primary btn-sm">Continue Reading</a>

к этому:

<a href="/questions/{{ $question->question_slug }}" class="btn btn-primary btn-sm">Continue Reading</a>

обратите внимание на начало / в URL.

Или просто удалите вопросы полностью из href и используйте только слаг, так как он добавляется к текущему местоположению.

0

Другие решения

Я решил это, есть ошибка в AJAX как:

if (data == 'question_deleted') {
window.location.href = '../questions';
}

Только что изменился window.location.href = './'; с window.location.href = '../questions';

0

По вопросам рекламы [email protected]