Мне просто интересно, почему моя кнопка «как» не может работать.Танго с Django - Создайте кнопку «Мне нравится»
Вот мой like_category() функция в views.py
@login_required
def like_category(request):
cat_id = None
if request.method == 'GET':
cat_id = request.GET.get('category_id', '')
likes = 0
if cat_id:
cat = Category.objects.get(id=int(cat_id))
if cat:
likes = cat.likes + 1
cat.likes = likes
cat.save()
return HttpResponse(likes)
И Ранго-ajax.js код:
$(document).ready(function(){
$('#likes').click(function(){
var catid;
catid = $(this).attr("data-catid");
$.get('/rango/like_category/', {category_id: catid}, function(data){
$('#like_count').html(data);
$('#likes').hide();
});
});
});
А вот category.html код:
<p>
<strong id="like_count">{{ category.likes }}</strong> people like this category
{% if user.is_authenticated %}
<button id="likes" data-catid="{{ category.id }}" class="btn btn-primary" type="button" action="/rango/like_category/">
<span class="glyphicon glyphicon-thumbs-up"></span>
Like
</button>
{% endif %}
</p>
И вот часть кода в base.html:
{% load rango_extras %}
{% load staticfiles %}
<script src="{% static "js/jquery-1.11.1.js" %}"></script>
<script src="{% static "js/rango-jquery.js" %}"></script>
<script src="{% static "js/jquery.js" %}"></script>
<script src="{% static "js/rango-ajax.js" %}"></script>
И я обнаружил, что мой код действительно такой же, как и у книги, но почему кнопка «как» просто не могла работать?
Убедитесь, что ваши JS файлы подаются правильно, попробуйте открыть в вашем браузере в JS/Rango-ajax.js файл и обеспечить содержание такие же вы показываете в ваш код, сделайте то же самое с зависимостями jquery.js ... – avenet
да, код rango-ajx.js - это то же самое, что и я ... –
Другая вещь, которую нужно проверить, - это доступ к странице: '/ rango/like_category /? category_id = '. Замена cat_id действительным идентификатором категории ... сообщите мне, если он работает. –
avenet