• Django 03. django框架之路由系统


    简介

        使用index和login视图举例详解了django框架路由系统的6种常用场景。

    views.py

    # -*- coding: utf-8 -*-
    from __future__ import unicode_literals
    from django.http import HttpResponse

    def index(request):
        return HttpResponse("<h1>index</h1>")

    def login(request,userName,passWord):
        if passWord == 'test1234_':
            return HttpResponse("%s,欢迎登录!" %(userName))
        else:
            return HttpResponse('用户名和密码错误')

    urls.py

    1.  直接导入views.py中的方法名
    from web.views import index,login

    urlpatterns = [
        url(r'^index/$',index),
    ]

    2. 不直接导入方法名,而是只导入views.
     from web import views
     urlpatterns = [
         url(r'^index/$', views.index),
     ]

    3. 使用正则中的分组方法进行参数传递,不指定参数名,按传入顺序 接收。
            from web import views
            urlpatterns = [
                  url(r'^index/$', views.index),
                  url(r'^login/(w+)/(w+)$', views.login),
           ] 
    输入正确时:
             

     输入错误时:
            

    4. 使用正则中的分组方法进行参数传递,指定要给那个参数传值 
         from web import views
         urlpatterns = [
        url(r'^index/$',views.index),
        url(r'^login/(?P<passWord>w+)/(?P<userName>w+)$',views.login),
         ]    

    输入正确时:
             
     
     输入错误时:
            


    5. 固定参数(passWord 属性为固定参数,即使你传入正确的密码“test1234_”,也会显示用户名和密码错误,因为login方法实际接收到的值固定为“test1234”)

        urlpatterns = [
        url(r'^index/$', views.index),
        url(r'^login/(?P<userName>w+)', views.login, {'passWord':'test1234'}),
       ]

                   

    6.  根据app对路由规则进行分类

        1) mysite.urls.py

            from django.conf.urls import url,include

    urlpatterns = [
        url('^web/',include('web.urls')),
    ]

        2) mysite.web.urls.py
        
        from django.conf.urls import url
        from web import views
           urlpatterns = [
        url('^index/$', views.index),
        url('^login/(?P<userName>w+)/(?P<passWord>w+)$', views.login),
    ]

     
     


    附录1:django 常用URL配置方法

    附录二:Django URL Name详解
    http://code.ziqiangxuetang.com/django/django-url-name.html




  • 相关阅读:
    第 16 章 CSS 盒模型[下]
    第 16 章 CSS 盒模型[上]
    第 15 章 CSS 文本样式[下]
    第 15 章 CSS 文本样式[上]
    第 14 章 CSS 颜色与度量单位
    第 13 章 CSS 选择器[上]
    第 12 章 CSS 入门
    关于springboot上传文件报错:The temporary upload location ***is not valid
    Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)
    git命令-切换分支
  • 原文地址:https://www.cnblogs.com/PythonHomePage/p/7634380.html
Copyright © 2020-2023  润新知