python django day 3 页面,自动 跳转,参数传递

zqxt_views/urls.py

path('', calc_views.index, name='home'),

calc/views.py

def index(request):

return render(request, 'home.html')

calc/templates/home.html

<!DOCTYPE html>

<html>

<head>

<title>自强</title>

</head>

<body>

<a href="/add/4/5/">计算 4+5</a>

</body>

</html>

url跳转,一个地址自动 跳另一个地址

python manage.py shell

reverse('add2', args=(4,5))

reverse('add2', args=(444,555))

calc\views.py 跳转的函数

def old_add2_redirect(request, a, b):

return HttpResponseRedirect(

reverse('add2', args=(a, b))

)

urls.py

path('add/<int:a>/<int:b>/', calc_views.old_add2_redirect), #update

path('new_add/<int:a>/<int:b>/', calc_views.add2, name='add2'), #add

参数

calc\views.py

def index(request):

string = u"我在学习Django,用它来建网站"

TutorialList = ["HTML", "CSS", "jQuery", "Python", "Django"]

info_dict = {'site': u'django', 'content': u'各种IT技术教程'}

List = map(str, range(100))# 一个长度为100的 List

return render(request, 'home.html', {'string': string,'TutorialList': TutorialList,'info_dict': info_dict,'List': List})

template\home.html

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <title>自强学堂</title>
 5 </head>
 6 <body>
 7  
 8 <a href="/add/4/5/">计算 4+5</a><p></p>
 9 {{ string }} <p></p>
10 
11 教程列表:
12 {% for i in TutorialList %}
13 {{ i }} 
14 {% endfor %}
15 <p></p>
16 
17 字典方法 1  站点:{{ info_dict.site }} 内容:{{ info_dict.content }}    <p></p>
18 字典方法 2
19 {% for key, value in info_dict.items %}
20     {{ key }}: {{ value }}
21 {% endfor %}
22 
23 <p></p>
24 {% for item in List %}
25     {{ item }}{% if not forloop.last %},{% endif %} 
26 {% endfor %}
27 
28 
29 变量    描述
30 forloop.counter    索引从 1 开始算 <p></p>
31 forloop.counter0    索引从 0 开始算 <p></p>
32 forloop.revcounter    索引从最大长度到 1 <p></p>
33 forloop.revcounter0    索引从最大长度到 0<p></p>
34 forloop.first    当遍历的元素为第一项时为真<p></p>
35 forloop.last    当遍历的元素为最后一项时为真<p></p>
36 forloop.parentloop    <p></p>
37 用在嵌套的 for 循环中,<p></p>
38 获取上一层 for 循环的 forloop<p></p>
39 
40 <ul>
41     {% for athlete in athlete_list %}
42         <li>{{ athlete.name }}</li>
43     {% empty %}
44         <li>抱歉,列表为空</li>
45     {% endfor %}
46     </ul>
47 
48     {% url 'add2' 4 5 %}  获取URL <p></p>
49 
50     {{ request.user }} 获取当前用户: <p></p>
51 
52     如果登陆就显示内容,不登陆就不显示内容:
53     {% if request.user.is_authenticated %}
54         {{ request.user.username }},您好!
55     {% else %}
56         请登陆,这里放登陆链接
57     {% endif %} <p></p>
58 
59 
60     {{ request.path }}  获取当前网址 <p></p>
61     {{ request.GET.urlencode }}   获取当前 GET 参数:<p></p>
62     <a href="{{ request.path }}?{{ request.GET.urlencode }}&delete=1">当前网址加参数 delete</a> <p></p>
63 </body>
64 </html>