Django模板变量未显示

时间:2018-11-29 21:42:48

标签: django object templates variables

由于某种原因,我无法显示category_request的注释,我现在知道为什么是smb。也许能够对此有所了解,但实际上我应该工作,但我看不到这里的错误。 据我所知,我正在从视图中使用category_request_comment来从category_request获取相关的注释对象...知道吗?

模板片段:

{% for category_request_comment in category_request_comments %}
    <div class="comment">
        <p>{{ category_request_comment.content|readmore:15 }}</p>

        {% if category_request_comment.content.published_date %}
            <div class="date">
                <a>Comment by: {{ category_request_comment.author }}</a><br>
                <a>Commented at: {{ category_request_comment.published_date }}</a>
            </div>
        {% endif %}
        {% if request.user == category_request_comment.author %}
            <a class="commentoption" href="{% url 'comment_edit' pk=category_request_comment.pk %}">Edit</a><a> | </a>
            <a class="commentoption" href="{% url 'comment_delete' pk=category_request_comment.pk %}">Delete</a>
        {% endif %}
    </div>
{% endfor %}

views.py

def category_request_detail(request, pk):
    category_request = get_object_or_404(CategoryRequests, pk=pk)
    list_category_request = CategoryRequests.objects.get_queryset().filter(id=pk).order_by('-pk')
    paginator = Paginator(list_category_request, 20)
    page = request.GET.get('page')
    category_request_comment = paginator.get_page(page)
    return render(request, 'myproject/category_request_detail.html', {'category_request': category_request, 'category_request_comment': category_request_comment})

views.py(仅供参考)

def category_request_comment_new(request, pk):
    if request.method == "POST":
        form = CategoryRequestsCommentForm(request.POST)
        if form.is_valid():
            category_request = get_object_or_404(CategoryRequests, pk=pk)
            requests_comment = form.save(commit=False)
            requests_comment.author = request.user
            requests_comment.published_date = timezone.now()
            requests_comment.category_request = category_request
            requests_comment.save()
            return redirect('category_request_detail', pk=requests_comment.category_request.pk)
    else:
        form = CategoryRequestsCommentForm()
        return render(request, 'myproject/comment_new.html', {'form': form})

urls.py

url(r'^categories/requests/$', myproject_views.category_request_list, name='category_request_list'),

预先感谢

2 个答案:

答案 0 :(得分:0)

您的模板正在寻找一个名为category_request_comments的对象,但是您没有向该模板发送任何具有该名称的对象。

答案 1 :(得分:0)

def category_request_detail(request, pk):
    category_request = get_object_or_404(CategoryRequests, pk=pk)
    list_comments = CategoryRequests_Comment.objects.get_queryset().filter(category_request_id=pk).order_by('-pk')
    paginator = Paginator(list_comments, 10)
    page = request.GET.get('page')
    comments = paginator.get_page(page)

    return render(request, 'myproject/category_request_detail.html', {'category_request': category_request, 'comments': comments})
相关问题