Javascript 如何从views.py中获取值并在html模板中使用它?

Javascript 如何从views.py中获取值并在html模板中使用它?,javascript,python,html,django,django-views,Javascript,Python,Html,Django,Django Views,我正在制作一个地图,用户可以登录并指定默认的起点和终点。我对Django和html非常陌生,现在我一直不知道如何将变量值传递到html中 这是我的观点 def maps(request): username = password = '' if request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password

我正在制作一个地图,用户可以登录并指定默认的起点和终点。我对Django和html非常陌生,现在我一直不知道如何将变量值传递到html中

这是我的观点

def maps(request):
    username = password = ''
    if request.method == 'POST':
        username = request.POST.get('username')
        password = request.POST.get('password')

        user = authenticate(username = username, password = password)

        if user is not None:
            if user.is_active:

                login(request, user)

                traffic_start = Auth.objects.get(user = user).traffic_start
                traffic_end = Auth.objects.get(user = user).traffic_end

    return render_to_response('maps.html')
我在这里尝试使用html文件中的值

function calcRoute(){
    var start = document.getElementById('start').value;
    var end = document.getElementById('end').value;
    var request = {
      origin: start,
      destination: end,
      travelMode: google.maps.TravelMode.DRIVING
    };
    directionsService.route(request, function(response, status){
      if(status == google.maps.DirectionsStatus.OK){
        directionsDisplay.setDirections(response);
      }
    });
  }
  google.maps.event.addDomListener(window, 'load', initialize);

我试图寻找类似的线程,但我仍然无法找到它,请帮助我,非常感谢

render\u to\u response
有一个可选参数,您可以使用它,它称为context。它必须是一本字典

render_to_response('maps.html', {'name': username})
您可以将模板中用户名的值与
{{name}
一起使用

查看复杂的示例项目。

您也可以通过以下方式传递对象:

型号.py

class Profiles(models.Model):
    id = models.IntegerField()
    first_name = models.CharField(max_length=45, blank=False)
    surname = models.CharField(max_length=45, blank=False)
profiles = Profiles.objects.all;
render_to_response('template.html', {'profiles': profiles })
然后在views.py中引用此对象,并将其传递给模板,如@Tim Zimmermann所述

视图.py

class Profiles(models.Model):
    id = models.IntegerField()
    first_name = models.CharField(max_length=45, blank=False)
    surname = models.CharField(max_length=45, blank=False)
profiles = Profiles.objects.all;
render_to_response('template.html', {'profiles': profiles })
然后,您可以在模板中循环使用它们:

template.html

{% for profile in profiles %}
      <p>{{ profile.first_name }}</p>
      <p>{{ profile.surname }}</p>
{% endfor %}
{%用于配置文件中的配置文件%}
{{profile.first_name}

{{profile.names}}

{%endfor%}
很多人可能认为存在重复,但我需要更多帮助,请理解。您已链接到教程的开发版本。我假设OP使用的是版本1.6,它在一些重要方面有所不同。我尝试返回render_to_response('maps.html',{'start':traffic_start,'end':traffic_end}),在html中,我输入start:end:但它不起作用,为什么呢?在html中,尝试输入
value=“{{{start}”
value=“{end}“
在输入标签中。非常感谢大家!