我只是想知道为什么我喜欢'按钮无法工作。
这是我在views.py
中的like_category()函数@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)
rango-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>
我发现我的代码与本书完全相同,但为什么&#39;喜欢&#39;按钮只是无法工作?
答案 0 :(得分:0)
因为上面显示的代码与书籍展示完全相同,所以也许问题不会发生在那里。
当我在base.html中查看我的代码时,我发现我放了<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
在按钮中,然后我将此代码放在所有.js文件上方,然后一切顺利。
所以也许代码顺序非常重要,我犯了一个愚蠢的错误。
无论如何,谢谢@avenet和@Jahongir Rahmonov