路由配置

路由配置

path()函数
导入 - from django.urlsimport path
语法- path(route,views,name=None)
参数:
    1.route: 字符串类型,匹配的请求路径
    2.views:指定路径所对应的视图处理函数的名称后面不要加()
    3.name: 为地址起别名,在模板中地址反向解析时使用
path转换器
语法:<转换器类型:自定义名>
作用:若转换器类型匹配到对应类型的数据,则将数据按照关键字传参的方式传递给视图函数
例子: path('page/<int:page>',views.xxx)
转换器类型作用样例
str匹配除了之外的非空字符串“v1/users/str:username"匹配/v1/users/guoxiaonao
int匹配0或任何正整数。返回一个intpage/int:page”匹配page/100
slug匹配任意由 ASCII 字母或数字以及连字符和下划线组成的短标签"detail/slug:sl”匹配/detail/this-is-django
path匹配非空字段,包括路径分隔符’/’"v1/users/path:ph匹配/1/users/a/b/c

做一个有计算器功能的网址

urls.py中
path('<int:n>/<str:op>/<int:m>', views.cal_view, name='cal_page')
views.py中
def cal_view(request, n, op, m):
    if op not in ['add', 'sub', 'mul']:
        return HttpResponse('Your op is wrong!')
    result = 0
    if op == 'add':
        result = n + m
    elif op == 'sub':
        result = n - m
    elif op == 'mul':
        result = n * m
    return HttpResponse('结果为:%s'%(result))
re_path0函数
在url的匹配过程中可以使用正则表达式进行精确匹配
语法:
    re path(reg,view,name=xxx)
    正则表达式为命名分组模式(?P<name>pattern);匹配提取参数后用关键字传参方式传递	   给视图函数
eg:
re_path(r'^(?P<x>\d{1,2})/(?P<op>\w+)/(?P<y>\d{1,2})$', views.cal2_view, name='cal2_page')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值