簡體   English   中英

在Django模板中訪問臨時模型數據?

[英]Accessing temporary model data in a django template?

我有以下視圖代碼,該代碼將一些臨時數據添加到ManyToMany關系中包含的Django模型實例中。 我希望能夠訪問模板中的數據,但不確定如何。

@login_required()
def shopping_cart(request):
    try:
        cart = ShoppingCart.objects.get(user__exact=request.user)
    except ShoppingCart.DoesNotExist:
        cart = ShoppingCart(user=request.user)
        cart.save()

    for album in cart.albums.all():
        album.vat_rate = request.session['vat_rate']
        album.total_cost = (((album.price / 100) * album.vat_rate) + album.price)

    return render_to_response('sym_money/shopping_cart.html',
                          {'shopping_cart': cart},
                          context_instance=RequestContext(request))

我需要通過執行以下操作來訪問模板中的vat_rate和total_cost:

{% for album in cart.albums.all %}
    {{ album.vat_rate }}
    {{ album.total_cost }}
{% endfor %}

沒有臨時數據在模型中有任何字段,我也不想將其保存到數據庫中,我只想能夠從模板訪問模型中的臨時數據。

在模板中,當您{% for album in cart.albums.all %} ,您將創建一個全新的查詢集,因此所有先前注釋的對象都將被丟棄。

將相冊查詢集另存為視圖中的變量,對其進行迭代並注釋對象,就像您正在做的那樣,然后將此變量傳遞給上下文。

提示: render_to_response是oldskool-只需使用render

暫無
暫無

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

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