Javascript 如何从views.py中获取值并在html模板中使用它?
我正在制作一个地图,用户可以登录并指定默认的起点和终点。我对Django和html非常陌生,现在我一直不知道如何将变量值传递到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
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}“
在输入标签中。非常感谢大家!