徽章通知按新比赛的数量

时间:2014-04-16 14:30:28

标签: python django django-templates django-views

我正在尝试使用批处理通知,但徽章会使用以下代码抛出几个徽章,并且不会显示该数字。我希望徽章能够显示几个帖子中符合兴趣的内容数量 我仍然是django的初学者,所以如果这是一个完全不好的方法,请跟我说。

interest.html

{% for item in interest %}
        <ul class='nav nav-pills nav-stacked'>
            <li><a href='/'>
                <span class='badge pull-right'>
                    {% for word in post %}
                        {% if word == interest %}
                            {{ word.as_number }}
                        {% else %}
                            0
                        {% endif %}
                    {% endfor %}
                </span>
                {{ item.interest }}
            </a></li> 
        </ul>
        {% endfor %}

context_processors.py

def user_interest(request):
    interest = Interests.objects.all()
    interests_form = InterestsForm(request.POST or None)
    post = Posts.objects.all()

    if interests_form.is_valid():
        new_interest = interests_form.save(commit=False)
        new_interest.save()
        #return HttpResponseRedirect('/')
        #apparently it is not needed here


    return {'interest': interest,
            'interests_form': interests_form,
            'post': post,
            }

models.py

class Interests(models.Model):
    interest = models.CharField(max_length=100)
    created = models.DateTimeField(auto_now_add=True)

1 个答案:

答案 0 :(得分:1)

我不是完全理解,但问题的一部分可能是这部分:

{% if word == interest %}

您将特定帖子与您的兴趣所有进行比较(自'interest' = Interests.objects.all()起)。至少我会改为:

{% if word == item %}

这会迭代您的兴趣列表(使用'item')并将其与帖子列表中的每个'word'进行比较。