Python3之Django Web框架URL匹配、反向解析及部分错误处理

来源:互联网 发布:安卓手机 mac照片 编辑:程序博客网 时间:2024/05/20 11:19

Django Web框架

使用Django注意点

urls使用:

1.如果在urls中匹配多次路径是相同的,那个视图函数只会执行一次,以后相同的视图函数不会再执行。
2.如果需要获取url地址栏的参数,需要在url加入分组,Django会将参数自动传给views中的视图函数,这时视图函数中的形参除了request还有另一个形参,分组分为无名分组和有名分组,无名分组会按照位置传参,有名分组会按照关键字传参:

(?P<关键字>):该种形式会按照关键字传参。

视图函数有几个分组就需要添加几个形参+1,为什么要+1,因为request参数是必须携带的,所以要加上request参数还有几个url分组匹配的参数,形式如下:
1.无名分组

url(r'^register.html/(\d+)/(\d+)', views.register),def register(request,year,month):    pass

2.有名分组

url(r'^register.html/(?P<p1>\d+)/(?P<p2>\d+)', views.register),def register(request,p2,p1):    pass

3.url的反向解析:

url(r’^admin/’, admin.site.urls, name=’admin’)
利用别名进行处理,模板页面需要路径的地方写入:{%url ‘admin’%},这样当页面进行渲染的时候,当前模板的路径会根据url匹配到路径将该路径填入模板对应的位置,然后进行渲染显示~

<form action="{% url 'login' %}" method="post">url(r'^login.html', views.login, name='login'),

如果一个页面报这种错误,请检查以上代码是否正确,如下图:
错误描述图

如果一个页面报这种错误,请检查模板路径配置,如下图:
错误描述图
路径配置图
修正代码:

‘DIRS’:[os.path.join(BASE_DIR,’templates’)