zoukankan      html  css  js  c++  java
  • django 基于正则表达式的url

    方式一:

    urls.py

    from mytest import views
    
    urlpatterns = [
        url(r'^index-(d+)-(d+).html', views.Index.as_view()),
    ]
    

    views.py

    from django.http import HttpResponse
    from django.shortcuts import render
    from django.views import View
    
    
    class Index(View):
    
        def get(self, req, param1, param2):
            print(param1, param2)
            return HttpResponse(param1+'--'+param2)
    
        def post(self, req):
            pass
            return render(req, 'index.html')
    

    当访问url : http://127.0.0.1:8000/index-3-4.html   

    返回

    这样我们看到,将url中传递的参数“3”和“4”取到并输出了。

    方式二:

    urls.py

    from mytest import views
    
    urlpatterns = [
        url(r'^index-(?P<param2>d+)-(?P<param1>d+).html', views.Index.as_view()),
    ]
    

    views.py 不变

    返回结果:

    这样相当于是固定将第一个数字传给param2,第二个数字传给param1,因此不用管形参的位置在哪里。

    另外:

        如果参数较多的话可以使用万能参数,例如:

        def index(req, *args, **kwargs):

          pass

    这样不管url传递了几个参数都没有问题了。

    *args 将参数封装为元组

    **kwargs 将参数封装为字典

  • 相关阅读:
    记录。短信网关.
    TP 笔记~
    FUCK IE FLASH(inline hook)
    API HOOK(MessageBoxA)
    inline hook MessageBox(2)
    c#线程中使用 dataset
    匈牙利算法解决二分图最大匹配
    C#:Array类的排序
    C#:属性
    C#:结构
  • 原文地址:https://www.cnblogs.com/wumingxiaoyao/p/6514710.html
Copyright © 2011-2022 走看看