Saif Khan
Saif Khan

Reputation: 484

My django html tags are not showing the result

Hello my django tags are not displaying the result. I don't know where I am making a mistake as i am new to django python. If you want to see more code do let me know.I used product_details = Product.objects.get(id=product_id) to query objects form the same model and wanted to display it using html in which I used django tags to display it but it's not working.

Template:

{% extends 'default/base.html' %}
{% block content %}
    <h1>Products Details </h1>
    <p>These are the details of your product, {{ user.username }}</p>
    {% for s in product__details %}
        {{ s.name }}
    {% endfor %}
{% endblock %}

My view

from django.shortcuts import render, redirect, get_object_or_404
from .forms import NewPro, Product
from django.contrib.auth.decorators import login_required


@login_required()
def pro(request):
    form = NewPro()
    if request.method == 'POST':
        form = NewPro(request.POST, request.FILES)
        if form.is_valid():
            entry = form.save(commit=False)
            entry.user = request.user
            entry.save()

            return redirect('add_products')

        else:
            form = NewPro()
    return render(request, "default/add_product.html", {'form': form})


@login_required()
def product(request, product_id):
    print(product_id)
    details = get_object_or_404(Product, id=product_id)
    product_details = Product.objects.get(id=product_id)
    print(product_details)
    return render(request, "default/product_details.html", {'details': details, 'product_details': product_details})

Upvotes: 0

Views: 1174

Answers (1)

Utkucan Bıyıklı
Utkucan Bıyıklı

Reputation: 1117

You context is product_details but for loop product__details . You should change.

{% for s in product_details %}
    {{ s.name }}
{% endfor %}

Upvotes: 1

Related Questions