urls配置

搭建django框架二

from表单

1.action 里边写相对路径,django会自动拼接ip+端口
注意: 路径前必须加/
/index/ 相当于 http://127.0.0.1:8000/index/
不写/ 相当于 http://127.0.0.1:8000/index/index/

2.GET 获取数据 POST获取数据
  数据 是QueryDict数据类型
  返回字符串数据使用HttpResponse
  返回html页面使用render(request,'index.html')
  if request.method == 'GET':
      return render(request, 'login.html')
  else:
      username = request.POST.get('username')
      password = request.POST.get('password')
      if username == 'dong' and password == '123':
          return HttpResponse('登录成功!')
      else:
          return HttpResponse('登录失败')
   

post请求

提交数据关掉一个认证机制,settings配置注释掉

'django.middleware.csrf.CsrfViewMiddleware',

urls.py 配置路由

url(正则,视图逻辑 参数 别名)

url(r'^index/', views.index),
表示以index/ 开头的都可以访问到,前置导航斜杠不需要加,后边的斜杠必须写

django url默认必须在最后加斜杠 ,因为 APPEND_SLASH =true
如果没有加 会重定向 加上斜杠再访问一次
可以在settings设置里去掉 APPEND_SLASH =false

无名分组

无名分组 有几个分组,参数写几个(参数是位置参数)
url(r'^books/(\d{4})/', views.books),
有名分组

有名分组

有名分组 给分组命名 ,参数是关键字参数,形参名字要和分组名对应好
参数位置没有要求

url(r'^books/(?P<year>\d{4})/(?P<month>\d{1,2})/', views.books_month),
def books_month(request,year,month):
  print('访问月')
  print(year,month)
  return HttpResponse(year+month)

默认值设置

    url(r'^dong/$',views.dong),
  url(r'^dong/(?P<name>\w+)/',views.dong),
def dong(request,name ='周雅婷'):
  return HttpResponse(name)

url 分发

INSTALL_APPS

INSTALL_APPS =[
这两种写法是一样的
'app01.apps.App01Config', // app01下的app01.py下的App01Config类的属性name='app01';
'app01';
]

url分发 include

用户请求 会发送到项目下的urls 根据不同的app urls再接着分发到每个app下的urls
url(r'^app01/',include('app01.urls')),
url(r'^app02/',include('app02.urls')),

 

上一篇:dedecms如何实现发布文章主动推送


下一篇:python游戏开发,猜数字小游戏。代码不多不要复制哦!