簡體   English   中英

Django 渲染字典

[英]Django render Dictionary

為什么我不能訪問我在這里制作的字典:

def kalkuler(request):

    fotlister = Produkt.objects.filter(under_kategori__navn__iexact="lister")
    kalkuler = ProduktKalkureing.objects.all()

    beregning = {}

    if request.method == "POST":
        omkrets = request.POST['omkrets']
        print(omkrets)
        for i in kalkuler:
            kalk = math.ceil((int(omkrets)/i.lengde)*1000)

            add = ({'produkt_tittel': i.produkt.produkt_tittel,
                    'produkt_bilde': i.produkt.produkt_bilde,
                    'produkt_info': i.produkt.produkt_info,
                    'produkt_link': i.produkt.produkt_link,
                    'pris_heltall': i.produkt.pris_heltall,
                    'antall_kalk': kalk,
                    'total_kost': kalk * i.produkt.pris_heltall
                    })

            beregning.update(add)

    print(beregning)

    context = {'kalkuler': kalkuler, 'beregning': beregning}

    return render(request, 'frontend/kalkuler/fotlist_kalkuler.html', context)

使用標准的 Django 代碼?

{% for b in beregning %}
   {{b.produkt_bilde}}
{% endfor %}

此外,當我制作字典時,它只添加最后一個值。 我如何制作它才能增加每一個價值。

對於您似乎實現的目標,您需要一個list而不是一個dict

def kalkuler(request):
    ...
    beregning = []
    ...
        beregning.append(add)
    ...

暫無
暫無

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

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