from django.conf.urls import url
# 必须导入url 不然默认的path是不能用正则表达式的
urlpatterns = [
# 系统默认的管理界面
url('admin/', admin.site.urls),
url(r'form/', g.form),
# ^$就将此url定死了,只能是getuser开头,4位数字结尾才可以访问
# url(r"^getuser/\d{4}$", g.getuser),#此url无参
url(r"(^getuser/\d{4}$)", g.getuser),#无命名参数,从url输入获取参数
url(r"(?P<year>\d{4})/(?P<month>\d{2})", g.getuser2),#有命名参数,从url输入获取参数
]
无命名传参,是根据参数的位置在views中进行接收
def getuser(req,arg1):
# return HttpResponse("<h1> hello world! </h1>")
date = datetime.datetime.now()
print(date,arg1)
return render(req,"get_current_time.html",{"current_time":date,"arg1":arg1 })
有命名传参,是根据参数的名称在views中进行接收
def getuser2(req,year,month):
# return HttpResponse("<h1> hello world! </h1>")
date = datetime.datetime.now()
print(date,year,month)
return render(req,"get_current_time.html",{"current_time":date,"arg1":year })
#主urls是分发的作用,分发给各自app下面的urls
以下主urls说明所有以blog开头的访问,都转给mysitapp下的urls模块
【主urls】整个项目的urls
urlpatterns = [ #主urls是分发的作用,分发给各自app下面的urls url(r"^blog",include('mysit.urls')), ]
【子urls】某个具体app下的子urls
urlpatterns = [ url(r"news/history$", g.getuser), ]
整合合起来就说明只有访问路径是/blog/news/history 才可以访问成功!