django_3:url配置
浏览器url访问——url.py中正则匹配——转向对应的视图处理方法——在view.py中找到方法执行——在方法中一般会用到render渲染到.html文件——再用到.html
url使用方式:
- 正则——匹配的对应的视图处理方法(全路径)
- from blog blog.views import index导入 #django1.8以后必须先导入
from django.conf.urls import url from django.contrib import admin from blog import views as blog_views urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^blog/index/$', blog_views.index, name='index'), ]
3.老版本中有一个默认为空的引号,可以当前缀使用,如blog.views,1.11版本没有这个
blog_views.index在新版本中不能带引号,否者报错
正则:
只要符合形式,就会被处理到
url(r'^blog/index/\d{2}$', blog_views.index, name='index'),
通过url向处理方法进行参数的传递:
get :url+?变量名=变量值,多个变量之间通过and分割
post :直接把路径url当中的某一部分作为参数进行传递,采用 对正则表达式分组的使用,
urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^blog/index/(?P<id>\d{2})$', blog_views.index, name='index'), ]
此时 \d{2}会传递给id(此时index中的参数必须是id,可以认为是关键字参数),然后给blog_views.index,在视图方法中获取
也可以不命名r'^blog/index/(\d{2})$',此时此时index中的参数可以随意命名,可以认为是位置参数
内容大部分引用王良明、赖国明著作,敬谢!