python 3.url了解与基础使用
URL使用
视图:
我们运行项目在网页上查看到的我们称之为
视图
视图一般在views.py下编辑
它的第一个参数永远都是request,通过它请求一些数据返回给网页给我们查看。
视图函数的返回结果必须是HttpResponseBase对象或者子类的对象。
from django.http import HttpResponse
def xxx(request):
#通过return返回 HttpResponseBase
return HttpResponse("通过request请求返回的值!")
映射
写完视图后需要与Url进行映射好比http://127.0.0.1:8000/id网站后面输入的id即为url,django就会从url.py进行寻找视图
#需要使用django.urls.path函数进行包裹映射和视图
from django.urls import path
#导入需要映射的文件
from app import views
#我们把这些匹配放在urlpatterns变量中,他是django规定的不用深究
urlpatterns = [
#第一个参数为url,第二个为需要的视图函数
path('id/',views.xxx),
]
这样访问http://127.0.0.1:8000/id的时候就会看到设置的视图
在url中添加参数
有时候url需要一些动态调整,127.0.0.1/p/1 比如博客某文章的id就是1,那么它是/p/<id>这样的动态的
path('book/',views.book_list),
path('book/<book_id>/',views.book_detail)
而在views中我们可以这样编写:
方法①:
def book_detail(request,book_id):
text = "您输入的书籍的id是:%s" % book_id
return HttpResponse(text)
这样在网页输入的url就是它的id,例如127.0.0.1/book/<1>那么会返回您输入的书籍的id是:<1>
方法②:
通过查询字符串的方式传递一个参数过去。示例代码如下:
path('book/detail/',views.book_detail)
在views.py中的代码如下:
def book_detail(request):
book_id = request.GET.get("id")
text = "您输入的书籍id是:%s" % book_id
return HttpResponse(text)
那么就可以通过/book/detail/?id=1即可将参数传递过去。
在URL中包含其他的urls模块
我们的项目不可能就一个app,那么我们就需要用多个views,要是使用一个url映射会显得特别混乱,那么我们就需要使用不同的url
不懂include函数的点击右方链接查看→include基本使用文章链接←
# app/urls.py文件:
#我们需要导入include。帮助我们使用多个url
from django.urls import path,include
urlpatterns = [
#把需要的`url`放在`include`中,这样凡是在`book/`里面的url时都会去`book`app下的urls.py中寻找相应的值
path('book/',include("book.urls"))
]
下一篇介绍path函数的定义及参数
python 3.url了解与基础使用的更多相关文章
- Python处理URL编码
我们在访问网站时,有很多连接都是有一些特殊符号组成,例如,我在百度搜索“大鱼海棠”,结果可以看到它的搜索出来的链接是: https://www.baidu.com/s?wd=%E5%A4%A7%E9% ...
- Python爬虫入门有哪些基础知识点
1.什么是爬虫 爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源,那么它就会抓取下来.想抓取什么?这个由你来控制它咯. ...
- python爬虫之Beautiful Soup基础知识+实例
python爬虫之Beautiful Soup基础知识 Beautiful Soup是一个可以从HTML或XML文件中提取数据的python库.它能通过你喜欢的转换器实现惯用的文档导航,查找,修改文档 ...
- 利用Python进行数据分析(12) pandas基础: 数据合并
pandas 提供了三种主要方法可以对数据进行合并: pandas.merge()方法:数据库风格的合并: pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起: 实例方法c ...
- 利用Python进行数据分析(5) NumPy基础: ndarray索引和切片
概念理解 索引即通过一个无符号整数值获取数组里的值. 切片即对数组里某个片段的描述. 一维数组 一维数组的索引 一维数组的索引和Python列表的功能类似: 一维数组的切片 一维数组的切片语法格式为a ...
- 利用Python进行数据分析(9) pandas基础: 汇总统计和计算
pandas 对象拥有一些常用的数学和统计方法. 例如,sum() 方法,进行列小计: sum() 方法传入 axis=1 指定为横向汇总,即行小计: idxmax() 获取最大值对应的索 ...
- 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作
一.reindex() 方法:重新索引 针对 Series 重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- Python全栈开发【基础四】
Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...
随机推荐
- 图上的并行处理 Parallel Processing of Graphs
Graph 本次学术前沿讲座由邵斌老师主讲,标题已经揭示了主题:Graph.1.5h的talk,听完自觉意犹未尽.本来以为是一节自己没接触过的图形学的talk,没想到讲的很多内容都跟自己学过的很多东西 ...
- MySQL函数find_in_set介绍
MySQL函数find_in_set介绍 数据库中的某个字段我十以字符存储的,同时又以","隔开的.如果想要查询这个字段中包含某个字符串该怎么查询?使用like?感觉不妥,如果使用 ...
- java继承实现的基本原理
方法调用的过程 寻找要执行的实例方法的时候,是从对象的实际类型信息开始查找的,找不到的时候,再查找父类类型信息. 动态绑定,而动态绑定实现的机制就是根据对象的实际类型查找要执行的方法,子类型中找不到的 ...
- [转]10 Best GTK Themes for Ubuntu 18.04
原文地址:https://omgfoss.com/10-best-gtk-themes-ubuntu-18-04/
- Spring生态圈的概要说明
Spring生态圈的概要说明 以下摘抄自<Spring Boot实战>一书某章节. ================================= Spring 主要jar包 (1 ...
- mybatis批量新增或更新
mysql中在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE时,向数据库中插入一条记录: 若插入数据的主键值/ UNIQUE KEY 已经在表中存在,则执行更新操作(UPDA ...
- [数据结构 - 第6章] 树之链式二叉树(C语言实现)
一.什么是二叉树? 1.1 定义 二叉树,是度为二的树,二叉树的每一个节点最多只有二个子节点,且两个子节点有序. 1.2 二叉树的重要特性 (1)二叉树的第 i 层上节点数最多为 2n-1: (2)高 ...
- spark + hive
1.如何让 spark-sql 能够访问hive? 只需将hive-site.xml 放到 spark/conf 下即可,hive-site.xml 内容请参照hive集群搭建 2.要在spark 代 ...
- Ant Design 学习记录
遇到的问题: 点击列表中的一个字段 , 显示出一条指定id(其他筛选条件的)数据 解决这个问题之前,要先了解 Antd的 Table中的 Column 列描述数据对象,是 columns 中的一项 ...
- (CSDN迁移) jFinal无法启动_JFinalDemoGenerator问题解决办法
Eclipse -> 项目右键 -> Build Path -> Config Build Path -> Source -> Add Folder, 将a_little ...