簡體   English   中英

與Django一起探戈-創建“贊”按鈕

[英]Tango with Django — Create 'Like' Button

我只是想知道為什么我的“喜歡”按鈕無法工作的原因。

這是我在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>

而且我發現我的代碼與本書完全相同,但是為什么“ like”按鈕不起作用?

因為上面顯示的代碼與書中顯示的代碼完全相同,所以也許在那里沒有發生問題。

當我在base.html中查看代碼時,發現已將<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>的按鈕,然后我把這個代碼上面的所有.js文件,然后一切又很好去。

因此,也許代碼順序非常重要,而我犯了愚蠢的錯誤。

無論如何,謝謝@avenet和@Jahongir Rahmonov

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM