Django(1)-简介
Django(2)-创建项目及默认项目目录结构介绍
Django(3)-配置文件详解
Django(4)-URL和视图
Django(5)-路由配置实例
Django(6)-请求及响应
Django(7)-Get请求和Post请求
Django(8)-设计模式
Django(9)-模板层简介与入门实例
Django(10)-模板层的变量和标签
Django(11)-模板层的过滤器和继承
Django(12)-url反向解析
Django(13)-静态文件
Django(14)-应用及分布式路由
Django(15)-模型层及ORM介绍
Django(16)-ORM基础字段及选项
Django(17)-ORM创建数据
Django(18)-ORM常用的查询函数详解及实例演示
Django(19)-ORM条件查询
Django(20)-ORM更新操作及实例演示
Django(21)-ORM删除操作及实例演示
Django(22)-ORM中F对象和Q对象
Django(23)-ORM聚合查询和原生数据库操作
Django(24)-admin后台管理设置步骤以及常见样式详解
Django实战技巧(1)-开发测试生产环境配置切换处理技巧
Django实战技巧(2)-git代码仓分支管理技巧
Django实战技巧(3)-项目配置
1、应用
2、分布式路由
- Django中,主路由配置文件(urls.py)可以不处理用户具体路由,主路由配置文件的可以做请求的分发(分布式请求处理),具体可以有各自的应用来处理
- 为使用分布式路由,每个应用中需要手动去创建一个urls.py文件
- 配置分布式路由
*步骤一: 主路由中调用include函数
- 语法:include('app名字.url模块名’)
- 作用:用于将当前路由转到各个应用的路由配置文件的urlpatterns进行分布式处理
- 如下,在主路由中配置指向app1的分布式路由
- 步骤二:应用中的路由配置urls.py
- 需要手动去创建
- 内容结构与主路由配置文件几乎完全一样
- 如下:
此时在app1应用下的视图文件编写视图函数:
from django.http import HttpResponse
from django.shortcuts import render
def index(request):
return HttpResponse("app1的首页")
在浏览器打开:http://127.0.0.1:8080/app1/index/,结果如下:可见,此时app1已经成功注册到mysite项目中,而且分布式路由也已经生效 了
3、应用下的模板
- 应用内部可以设置模板目录,步骤如下:
- 应用下需要手动创建templates文件夹
- setting.py中开启应用模板功能,TEMPLATE配置项中的‘APP_DIRS‘的值设置为True即可
- 应用下的templates和外层templates都存在是,django的查找原则如下:
- 优先查找外层templates目录下的模板
- 按INSTALLED_APPS配置下的应用顺序逐层查找
实例:
app1下的路由设计为:
app1下的视图函数如下:
from django.http import HttpResponse
from django.shortcuts import render
def index(request):
return render(request,"app1_index.html")
在app1下创建templates,然后创建app1_index.html文件,内容如下:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>我是app1的首页title>
head>
<body>
<p>我是app1的首页p>
body>
html>
在浏览器中打开 http://127.0.0.1:8080/app1/index/,结果如下:
这样可以实现在应用中继续创建templates文件夹,但是又一个问题就是要保证模板文件名必须独一无二才能不会出错,这就比较麻烦了,所以这块一般推荐的做法就是在应用下的templates目录下继续创建一个和应用名一样的文件夹,然后在视图函数中通过应用的目录加上模板文件名,这样就很容易独一无二了,如下图