3/19 Django框架 url路由配置及模板渲染
3/19 Django框架 url路由配置及模板渲染
1.路由分配
URL(Uniform Resoure Locato):统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
https://docs.pythontab.com:443/django/django1.5/intro/overview.html#model
协议 域名(IP地址和端口) 路径 锚点
urlpatterns : 路由模式
项目文件下的叫根配置文件
url.py : UrlConf模块(url配置模块)
path函数(route, view, kwargs=None, name=None)
- route是一个字符串url规则
- view是一个试图,是一个函数,不加括号
- kwargs:额外的参数,是一个字典
- name:url规则的名字
在url中捕获参数
例如要获取某个学生的详情 需要在数据库中通过主键id唯一标识这个学生
通过<>捕获参数 转换器int: (int:)
转换器
pk传进去的时候会转换类型
- str: 匹配除了路径分隔符'/'之外所有的字符串,如果不写转换器,默认是字符串转换器
- int: 匹配0或任何正整数
- slug: 匹配任意的ASCII字符或数字组成的slug字符串,连字符和下划线
- path: 匹配任何非空字符串,包括路径分隔符‘/’
使用正则表达式
re_path(route,view,kwargs=None,name=None)
注:用正则表达式匹配到的参数会转换成字符串类型
url命名
重定向
导入django.shortcuts.redirect
return redirect('')
命名:在路由模式中加入name = ''可以给路径命名
使用的时候导入django.shortcuts.reverse
使用reverse('')
如果在不同APP下路径的命名相同,就需要在每个APP的urls.py下设置一个变量
app_name = '<app_name>',命名就可以写成reverse('<app_name>:'),
以便区分不同的视图
2.模板系统
项目根目录下新建一个templates文件夹,再在templates文件夹下新建APP文件夹,用来存放不同应用下的模板
项目目录下的settings.py里有一个叫TEMPLATES的列表,里面嵌套了一个字典,是用来配置模板路径的。将BASE_DIR(项目根目录)与路径拼接,放到DIRS的值里去'DIRS':[os.path.join(BASE_DIR, 'templates')]
from django.template.loader import get_template
t = get_template('teacher/index.html')
html = t.render()
return HttpResponse(html)
# 就等同于
return render(request, 'teacher/index.html')
3/19 Django框架 url路由配置及模板渲染的更多相关文章
- Django(一):url路由配置和模板渲染
urls.py路由用法 url基本概念 url格式 urls.py的作用 url解析过程 include的作用 kwarg的作用 name的作用 URL概念 URL(Uniform Resoure L ...
- Django 02 url路由配置及渲染方式
Django 02 url路由配置及渲染方式 一.URL #URL #(Uniform Resoure Locator) 统一资源定位符:对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是 ...
- django中url路由配置及渲染方式
今天我们学习如何配置url.如何传参.如何命名.以及渲染的方式,内容大致有以下几个方面. 创建视图函数并访问 创建app django中url规则 捕获参数 路径转换器 正则表达式 额外参数 渲染方式 ...
- Django学习手册 - 正则URL路由配置/路由分发
############################################### 总结: 一.url路由配置: 方式一:(通过url链接get获取) 方式二:(url路由匹配方式获取-拓 ...
- [Django框架之路由层匹配、有名 无名分组、反向解析、路由分发、名称空间、伪静态、本地虚拟环境、django版本区别]
[Django框架之路由层匹配.有名 无名分组.反向解析.路由分发.名称空间.伪静态.本地虚拟环境.django版本区别] 路由层 路由即请求地址与视图函数的映射关系,如果把网站比喻成一本书,那路由就 ...
- [Django框架 - 静态文件配置、request对象方法初识、 pycharm链接数据库、ORM实操增删改查、django请求生命周期]
[Django框架 - 静态文件配置.request对象方法初识. pycharm链接数据库.ORM实操增删改查.django请求生命周期] 我们将html文件默认都放在templates文件夹下 将 ...
- day05 django框架之路由层
day05 django框架之路由层 今日内容概要 简易版django请求声明周期流程图(重要) 路由匹配 无名有名分组 反向解析 无名有名解析 路由分发 名称空间 伪静态 虚拟环境 简易版djang ...
- url路由配置以及渲染方式
路由分配及模板渲染 路由系统 urlpatterns = [ path('admin/', admin.site.urls), path('teacher/',include('teacher.url ...
- Django之url路由
Django之url路由 url路由介绍 url路由是关联url及其视图函数关系的过程. 作用就是使views里面处理数据的函数与请求的url建立映射关系 url路由配置 Django的url路由配置 ...
随机推荐
- Windows改动cmd字符集
在中文Windows系统中,假设一个文本文件是UTF-8编码的,那么在CMD.exe命令行窗体(所谓的DOS窗体)中不能正确显示文件里的内容.在默认情况下,命令行窗体中使用的代码页是中文或者美国的,即 ...
- cocoapods的安装,使用,卸载,以及你可能会遇到的坑..
首先, 不会用cocoapods的话如过你接手某些新项目是用cocoapods写的你会疯, 其次他真的非常好用, 当然某些坑也是存在的,比方你用它导入了AFNetwork然后你须要改动一些AF的内部的 ...
- 《AndroidStudio每日一贴》11. 重构之提炼为常量
提炼为常量是从暂时变量高速提炼出静态常量,这也是我们经常使用的重构手段. 很多其它有用技巧请查看<AndroidStudio有用指南> 操作步骤: ➤ 菜单条: Refactor -> ...
- iOS Code Sign error: Provisioning profile can't be found 解决方式
出现error的过程:在执行另外一个xcode项目重置了code sign.回到原来的项目的时候出现这个error 修复方法: targe-build settings-code signing id ...
- vue15 自定义元素指令、标签指令
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 123.static静态函数与类模板
#include <iostream> using namespace std; //静态函数没有this指针,无需创建对象就可以直接调用 template<class T> ...
- Android自定义控件简单实现ratingbar效果
先上图: 一开始让我自定义控件我是拒绝的,因为android很早以前就有一个控件ratingbar,但是设置样式的时候我发现把图片设置小一点就显示不全,一直找不到解办法!(可以设置系统的自带的小样式) ...
- JavaScript Debug调试技巧
收藏于:https://blog.fundebug.com/2017/12/04/javascript-debugging-for-beginners/
- apache-maven-3.0.4-bin.zip
http://zhidao.baidu.com/share/2a8974fd1546ef5f11ad9cccb3cabf88.html apache-maven-3.0.4-bin.zip
- installp 软件的4种状态
安装和维护LPP软件 installp 对包提供了如下四种主要的操作: Apply Commit Reject Remove webes.4.0.0.1 commited webes.4. ...