Django(9)url指定默认参数「建议收藏」

Django(9)url指定默认参数「建议收藏」前言当我们访问网页的时候,后台返回列表中有n条数据,此时我们会使用分页,比如一页只展示10条,但是我们访问第一页的时候大多数情况下,都会给url一个默认值,访问的时候直接展示第一页数据案例我们的

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

当我们访问网页的时候,后台返回列表中有n条数据,此时我们会使用分页,比如一页只展示10条,但是我们访问第一页的时候大多数情况下,都会给url一个默认值,访问的时候直接展示第一页数据
 

案例

我们的需求:在访问127.0.0.1/books/直接展示第一页数据,在访问127.0.0.1/books/page/2/就展示第二页数据。说完需求,我们开始实现代码

  1. 我们先在项目中创建一个booksapp,然后在books中创建一个urls.py文件,在文件中写入以下代码
urlpatterns = [
    path('', views.page),
    path('page/<int:page>/', views.page)
]
  1. 然后在books.views.py视图中写入视图函数page
def page(request, page=0):
    books_list = [
        'java大全',
        'python大全',
        'c语言程序设计',
        'JavaScript大全'
    ]
    return HttpResponse(books_list[page])
  1. 最后在项目中的根urls.py文件中写入以下代码
urlpatterns = [
    path('books/', include('books.urls')),
]

从以上代码我们可以看到当我们访问127.0.0.1/books/时会匹配这条路径path('', views.page),路径会去执行视图函数page,由于我们没有在路径中传入参数那么默认值就是0,浏览器就会返回java大全
Django(9)url指定默认参数「建议收藏」
当我们输入127.0.0.1/books/page/2/时,django会匹配path('page/<int:page>/', views.page),然后还是去执行视图函数page,由于这次我们传入了参数page=2,所以这次我们就会返回book_list[2]这本书,也就是c语言程序设计
Django(9)url指定默认参数「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166175.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • realsense深度图像保存方法「建议收藏」

    realsense深度图像保存方法「建议收藏」一般使用realsense时会保存视频序列,当保存深度图像时,需要注意保存的图像矩阵的格式,不然可能造成深度值的丢失。在众多图像库中,一般会使用opencv中的imwrite()函数进行深度图像的保存。一般深度图像中深度值的单位是mm,因此一般使用np.uint16作为最终数据格式保存。例子:importnumpyasnpimportcv2deffun1(…

    2022年4月25日
    30
  • notifyDataSetChanged无效[通俗易懂]

    notifyDataSetChanged无效[通俗易懂]一、前言相信很多人都曾经被这个问题困扰,当然我也是这样过来的,原来以为只要数据变了,调用adapter的notifyDataSetChanged就会更新列表,然而结果却没有实现,其实是在一些细节上没有注意造成的,所以现在对这个问题进行下总结希望可以帮助到有需要的人。二、原因分析有以下三个原因:1、数据源没有更新,调用notifyDataSetChanged无效。2、数据源更新了,但是它指向新的引用,

    2022年6月28日
    66
  • android之AudioManager详解_什么是AudioManager

    AudioManager类位于android.Media 包中,该类提供访问控制音量和钤声模式的操作。官方文档中注明了:Use Context.getSystemService(Context.AUDIO_SERVICE) to get an instance of this class.所以我们可以通过下面的语句获得: AudioManager audiomanage =

    2022年3月9日
    47
  • Git切换分支命令

    Git切换分支命令GIT切换分支命令1.查看远程分支2.查看本地分支3.切换分支程序员在开发和管理项目的时候,往往会会切除多个分支来进行使用,现在就来谈谈如何切换分支1.查看远程分支1.gitbranch-a先到你的项目根目录下打开Git,在命令行输入上面指令就能查出远程所有分支了。2.查看本地分支2.gitbranch这一步可有可无,只是让自己知道项目现在处于哪个分支之下3.切换分支3.gitcheckout-b想要的分支名(如果本地有这分支的话,-b就可以省略

    2022年6月20日
    49
  • hdparm

    “hdparm”(即硬盘参数)是Linux的命令行程序之一,用于处理磁盘设备和硬盘。借助此命令,您可以获得有关硬盘,更改写入间隔,声学管理和DMA设置的统计信息。它还可以设置与驱动器…

    2022年4月4日
    47
  • mysql怎么删除默认值_MySQL删除字段

    mysql怎么删除默认值_MySQL删除字段需求:为已有添加字段示例:1.查看先有表结构2.为t_test表添加字段nickname语法:ALTERTABLE表名ADD字段名字段类型ALTERTABLEt_testADDnicknamevarchar(25)COMMENT‘昵称’;3.为t_test表添加字段age,并设置默认值为20ALTERTABLEt_…

    2022年9月26日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号