Django urls与views #路径与函数映射 python笔记

视图层之路由配置系统(views)


urlpatterns = [
         url(正则表达式, views视图函数,参数,别名),
	]

参数说明:

    一个正则表达式字符串
    一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串
    可选的要传递给视图函数的默认参数(字典形式)
    一个可选的name参数

注意:
    1 一旦匹配成功则不再继续
    2 若要从URL 中捕获一个值,只需要在它周围放 置一对圆括号。
    3 不需要添加一个前导的反斜杠,因为每个URL 都有。例如,应该是^articles 而不是 ^/articles。
    4 每个正则表达式前面的'r' 是可选的但是建议加上。


#路径与函数的映射
例: http://127.0.0.1:8000/luo
输入的路径-> luo/ 跟下面正则匹配,若成功则调用后面的函数 
url(r'^luo/', views.abs)


#——————————————————urls
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^a/2017/1',views.abs1),     #匹配以 a/2017/1 开头的路径   abs1(request)
    url(r'^a/(\d{4})/\d{2}',views.abs2),   #把( ) 内的匹配的值(年份) 当做参数给abs2(request,year)
    url(r'^a/(\d{4})/(\d{2})', views.abs3),   #把( ) 内的匹配的值(年份,月份)   abs3(request,year,month)
    # url(r'^a/(?P<y>\d{4})/(?P<mo>\d{2})',views.abs4)   #给( ) 内匹配的值加个名字
]


#——————————————————views
def abs1(request):
    # a/2017/1
    return HttpResponse('ok')

def abs2(request,year):
    # year
    # a/2017/1
    return HttpResponse(year)

def abs3(request,year,month):
    #year       正则匹配的年份
    #month            ...月份
    # a/2017/1     输入的路径
    return HttpResponse(year,month)


-------------------------------views

def  fun(request):

name='luo'
        age='18'
#第一种
        temp=loader.get_template('login.html')
        return HttpResponse(temp.render({{name,age}}))
#第二种
        return render(request,'login.html',{"name":name,"age":age})
推荐第二种


项目树状图:






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值