Оказывается, я решил, что нужно привести в порядок вышеприведенное:
var vote = function() {
pk = $(this).attr('pk');
data = {
'pk': pk
};
$.ajax({
type: "POST",
data: data,
url: "/link/" + pk + "/vote/",
});
};
Приведенный в порядок, я затем проверил представление и обнаружил, что оно не вытягивает правильное значение из DataDict, переданного ему ajax, откуда и произошла ошибка 500.
Ранее я сталкивался с 403 из-за проблемы CSRF. Для тех, кто интересуется, как ее решить, я просто использовал скрипт, упомянутый в вопросе выше, сохраненный в файле 'csrf.js' в / static / js / каталог моего приложения, а затем включил его в качестве одного из сценариев, который затем решил эту проблему.