У меня вопрос
Вызов jquery ajax дает мне ошибку 405 (метод запрещен :) Сообщение об ошибке не сообщает мне, почему. Сам запрос кажется причиной проблемы. если вы знаете, в чем проблема для этой проблемы, спасибо, дайте мне знать ~!
ajax
$('body').on('click', '.skill_search_button', function (e) {
e.preventDefault();
window.history.pushState("", "", '/wm/myshortcut/')
const search_word = $(".skill_input_box").val();
console.log("search_word : " + search_word);
$("input:radio.search").each(function () {
if (jQuery(this).is(":checked")) {
search_option = this.id;
} else {
// alert("check")
}
});
$.ajax({
type: "POST",
url: 'search_by_id_and_word/',
data: {
'search_word': search_word,
'search_option': search_option,
'page_user': "{{page_user}}",
csrfmiddlewaretoken: '{{ csrf_token }}'
},
success: function (result) {
window.history.pushState("", "", '/wm/myshortcut/')
$("#wm_list_area_for_popup").html("")
$("#wm_list_area_for_popup").append(result)
}
});
});
url
path('myshortcut/search_by_id_and_word/' , views.searchSkilNoteViewByIdAndWord.as_view(), name="search_by_id_and_word"),
view
class searchSkilNoteViewByIdAndWord(ListView):
model = MyShortCut
paginate_by = 10
template_name = 'wm/MyShortCut_list_for_search.html'
def get_queryset(self):
if request.method == "POST" and request.is_ajax():
search_user_id = request.user
search_word = request.POST['search_word']
search_option = request.POST['search_option']
print("search_user_id : ", search_user_id)
print("search_word : ", search_word)
print("search_option : ", search_option)
user = User.objects.get(username=search_user_id)
qs = MyShortCut.objects.filter(Q(author = user)).filter(Q(title__icontains=search_word) | Q(content1__icontains=search_word) | Q(content2__icontains=search_word)).order_by('-category')
return qs
else:
qs = MyShortCut.objects.filter(Q(author = user)).filter(Q(title__icontains=search_word) | Q(content1__icontains=search_word) | Q(content2__icontains=search_word)).order_by('-category')
return qs