• 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))

    calcviews.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

    参数 

    calcviews.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})

    templatehome.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>
  • 相关阅读:
    使用MySQL实现分布式锁
    文件分享
    redis geo 做距离计算排序分页
    在不修改iframe文件的情况下如何设置iframe里面的css样式
    tp 队列分享
    guzzlehttp/guzzle发送请求说明
    简说Vue中的插槽
    leetcode398 随机数索引蓄水池算法
    flex强化学习
    《汉杏》书28th0424:《优雅丛书》
  • 原文地址:https://www.cnblogs.com/LiuFengH/p/9901619.html
Copyright © 2020-2023  润新知