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了解与基础使用的更多相关文章

  1. Python处理URL编码

    我们在访问网站时,有很多连接都是有一些特殊符号组成,例如,我在百度搜索“大鱼海棠”,结果可以看到它的搜索出来的链接是: https://www.baidu.com/s?wd=%E5%A4%A7%E9% ...

  2. Python爬虫入门有哪些基础知识点

    1.什么是爬虫 爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源,那么它就会抓取下来.想抓取什么?这个由你来控制它咯. ...

  3. python爬虫之Beautiful Soup基础知识+实例

    python爬虫之Beautiful Soup基础知识 Beautiful Soup是一个可以从HTML或XML文件中提取数据的python库.它能通过你喜欢的转换器实现惯用的文档导航,查找,修改文档 ...

  4. 利用Python进行数据分析(12) pandas基础: 数据合并

    pandas 提供了三种主要方法可以对数据进行合并: pandas.merge()方法:数据库风格的合并: pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起: 实例方法c ...

  5. 利用Python进行数据分析(5) NumPy基础: ndarray索引和切片

    概念理解 索引即通过一个无符号整数值获取数组里的值. 切片即对数组里某个片段的描述. 一维数组 一维数组的索引 一维数组的索引和Python列表的功能类似: 一维数组的切片 一维数组的切片语法格式为a ...

  6. 利用Python进行数据分析(9) pandas基础: 汇总统计和计算

    pandas 对象拥有一些常用的数学和统计方法.   例如,sum() 方法,进行列小计:   sum() 方法传入 axis=1 指定为横向汇总,即行小计:   idxmax() 获取最大值对应的索 ...

  7. 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作

    一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...

  8. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  9. Python全栈开发【基础四】

    Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...

随机推荐

  1. bootstrap弹框去除遮罩层效果

    是通过css解决这个问题,核心css代码如下: .modal-backdrop { filter: alpha(opacity=)!important; opacity: !important; } ...

  2. Http、Socket、WebSocket之间联系与区别

    WebSocket和Socket区别 可以把WebSocket想象成HTTP(应用层),HTTP和Socket什么关系,WebSocket和Socket就是什么关系. HTTP 协议有一个缺陷:通信只 ...

  3. Java对姓名, 手机号, 身份证号, 地址进行脱敏

    替换几位就用几个*号 一.姓名 1, 脱敏规则: 只显示第一个汉字,比如李某某置换为李**, 李某置换为李* private static String desensitizedName(String ...

  4. Net core学习系列(七)——Net Core中间件

    一.什么是中间件(Middleware)? 中间件是组装到应用程序管道中以处理请求和响应的软件. 每个组件: 选择是否将请求传递给管道中的下一个组件. 可以在调用管道中的下一个组件之前和之后执行工作. ...

  5. uniapp - 富文本编辑器editor(仅支持App和微信小程序)

    uniapp - editor富文本编辑器用法示例 丢几个图,用心看下去(-.-) 这里使用了https://ext.dcloud.net.cn/plugin?id=412 插件,用于选择字体颜色.其 ...

  6. 【转】Sql Server查看所有数据库名,表名,字段名(SQL语句)

    -- 获取所有数据库名 select * from master..SysDatabases; -- 获取hotline数据库中所有表名 select name from hotline..SysOb ...

  7. iredmail开源邮件系统部署

    Iredmail 安装前注意事项: 通过官网了解iRedMail: 2.    选择相应的linux发行版(我选的是64位的CentOS6.4,iRedMail-0.8.6.tar.bz2) ired ...

  8. Flutter入门(二)

    * 网格布局 class HomeContent extends StatelessWidget { List<Widget> _getListData() { var tempList ...

  9. 全文搜索引擎Elasticsearch详细介绍

    我们生活中的数据总体分为两种:结构化数据 和 非结构化数据. 结构化数据:也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理.指具有固 ...

  10. python对不同类型文件(doc,txt,pdf)的字符查找

    python对不同类型文件的字符查找 TXT文件: def txt_handler(self, f_name, find_str): """ 处理txt文件 :param ...