我正在创建一个用户可以登录并分配默认开始和结束点的地图。我是Django和html的新手,现在我不知道如何将变量值传递给html。
这是我的views.py
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);
我尝试寻找类似的线程,但我仍然无法弄明白,请帮助我,非常感谢!!
答案 0 :(得分:6)
render_to_response
有一个可选参数,你只能用它,它被称为上下文。它必须是一本字典。
render_to_response('maps.html', {'name': username})
您可以使用{{ name }}
模板中的用户名值
检查Django Tutorial是否有复杂的示例项目。
答案 1 :(得分:0)
您也可以通过这种方式传递对象:
<强> Models.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)
然后在views.py中引用此对象,并将其传递给您的模板,如@Tim Zimmermann所述
<强> Views.py 强>
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 %}