如何在模板文件(HTML文件)中使用Django中的id来检索对象数据?

时间:2016-07-30 16:38:37

标签: django django-templates

我有一个像这样的模板文件(index.html)

  1. Car item1
  2. Car item2
  3. Car item3
  4. 当我们点击其中的每一个时,我们使用名为{{Car_id}}的变量重定向到模板文件(details.html),我想在此模板文件中显示有关此对象的详细信息。如何从模板文件中的数据库中检索对象?

    这是views.py:

    from django.shortcuts import render
    from .models import Car
    
    def index(request):
        latest_car_list = Car.objects.order_by('-placketName')[:5]
        context = {
            'latest_car_list': latest_car_list,
        }
        return render(request, 'CarBank/index.html', context)
    
    def detail(request, car_id):
        context = {
            'car_id': car_id
        }
        return render(request, 'CarBank/details.html', context)
    

1 个答案:

答案 0 :(得分:1)

如果您使用的是Django自己的模板系统:

您只需在模板文件中使用{{ variable_name }}标记,即可访问已传入上下文词典(在视图文件中)的变量。

更新

您需要在视图中从数据库中检索对象,就像在index视图中一样。如果您想在detail视图中从数据库中检索单个对象,可以这样做:

def detail(request, car_id):
    car = Car.objects.get(pk=car_id)
    context = {
        'car': car
    }
    return render(request, 'CarBank/details.html', context)

然后只需在模板中调用{{ car }}

了解更多here