我的编程空间,编程开发者的网络收藏夹
学习永远不晚

diango路由分发

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

diango路由分发

1个Django 项目里面有多个APP目录大家共有一个 url容易造成混淆,于是路由分发让每个APP的拥有了自己单独的url


例如:将blog应用的url分离出来

1、进入mysite目录,修改urls.py文件

from django.contrib import admin
#分离路由,需要导入include方法
from django.urls import path,re_path,include

urlpatterns = [
    path('admin/', admin.site.urls),
    #注意include的是字符串形式的 文件路径
    path('blog/', include('blog.blog_urls')),
]

进入blog目录,创建文件blog_urls.py,内容如下:

from django.urls import path,re_path,include
from blog import views

urlpatterns = [
    re_path('index/(\d+)/', views.index),  # 分页
    re_path('detail/(\d+)/', views.detail),  # 详细信息
]


2、业务处理函数代码 mysite/blog/views.py,内容如下:

from django.shortcuts import render,HttpResponse

# 临时存放一些数据,生产环境中,这些数据都是保存在数据库中
USER_LIST = []
for item in range(108):
    temp = {"id": item, "username": "name"+str(item), "email": "email"+str(item)}
    USER_LIST.append(temp)

def index(request, page):
    # 将用户信息分页展示
    # 第一页  0-9
    # 第二页  10-19
    # 第三页  20-29
    page = int(page)
    start_id = (page - 1) * 10
    end_id = page * 10 -1
    #用户列表
    user_list = USER_LIST[start_id:end_id]

    return render(request, "index.html", {"user_list": user_list})

def detail(request, nid):
    # 用户ID的详细信息
    nid = int(nid)
    current_detail_dict = USER_LIST[nid]
    return render(request, "detail.html", {"current_detail_dict": current_detail_dict})


3、分页html代码 mysite/templates/index.html,内容如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <table>
        <thead>
            <tr>
                <td>ID</td>
                <td>用户名</td>
                <td>详细</td>
            </tr>
        </thead>
        <tbody>
            {% for item in user_list %}

                <tr>
                    <td>{{ item.id }}</td>
                    <td>{{ item.username }}</td>
                    {#这里要加blog,否则点击之后,提示404#}
 <td><a href="/blog/detail/{{ item.id }}/" target="_blank">查看详细</a></td>
                </tr>
            {% endfor %}

        </tbody>

    </table>


</body>
</html>


4、用户详细信息html代码 mysite/templates/detail.html,内容如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <ul>
        <li>{{ current_detail_dict.id }}</li>
        <li>{{ current_detail_dict.username }}</li>
        <li>{{ current_detail_dict.email }}</li>

    </ul>

</body>
</html>


5、目录结构

mysite/
├── blog
│   ├── admin.py
│   ├── apps.py
│   ├── blog_urls.py
│   ├── __init__.py
│   ├── models.py
│   └── views.py
├── manage.py
├── mysite
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── templates
    ├── detail.html
    └── index.html


6、访问用户信息分页url,点击页面查看详细

通过访问url

http://127.0.0.1:8000/blog/index/1/

最后的数字可以换成其他的

blob.png

点击查看详细,就可以看到用户详细信息

blob.png


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

diango路由分发

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

diango路由分发

1个Django 项目里面有多个APP目录大家共有一个 url容易造成混淆,于是路由分发让每个APP的拥有了自己单独的url例如:将blog应用的url分离出来1、进入mysite目录,修改urls.py文件fromdjango.contr
2023-01-30

H3C之路由重分布

路由重分布    描述:路由器1使用ripng协议 、路由器2使用OSPF协议、路由器3在两个路由器之间,是实现两个路由器之间网络的互联,需要在路由器3上注入两个协议       OSPFimport-route rip      rip 
2023-01-31

详细分析Cisco路由技术中的GPRS路由管理

  GPRS路由器,是一种基于GPRS网络的无线路由器,同时也称2.5G路由器,GPRS路由器除具有普通路由器的全部功能(如NAT)外,同时拥有无线登录、自动拨号、掉线检测等功能。现在就和小编共同来学习一下:详细分析Cisco路由技术中的GPRS路由管理。  经常使用路由器的朋友们应该可以看到,其实现在的GPRS路由的
详细分析Cisco路由技术中的GPRS路由管理
2024-04-17

Vue3中路由和路由配置方式的示例分析

这篇文章给大家分享的是有关Vue3中路由和路由配置方式的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。路由的基本配置1、安装插件npm install vue-router@next --save2、创建
2023-06-22

关于路由器分组转发算法的知识点

  分组转发(也就是for warding)是指在互联网络中路由器转发IP分组的物理传输过程与数据报转发机制。根据分组的目的Ip地址与源Ip地址是否属于同一个子网可分为直接转发和间接转发。在这一篇教程里面,小编就会和大家介绍一种Cisco路由技术,那就是关于路由器分组转发算法的知识点。  有很多的朋友都会问小编路由器分
关于路由器分组转发算法的知识点
2024-04-18

关于重分发以及优化路由的知识点

  CCNA认证可证明持证者已掌握网络的基本知识,能利用局域网和广域网的接口安装和配置Cisco路由器、交换机及简单的LAN和WAN,提供初级的排除故障服务,提高网络的性能和安全。现在就和小编共同来学习一下:关于重分发以及优化路由的知识点。  知识点一:大家知道什么是重分发吗?其实重分发指的就是一个组织运行了非常多种路
关于重分发以及优化路由的知识点
2024-04-17

nginx路由配置怎么转发

在nginx中配置路由转发可以使用`location`指令来实现。下面是一个示例配置:```server {listen 80;server_name example.com;location /app1 {proxy_pass http:
2023-09-14

WPF中隧道路由和冒泡路由事件的示例分析

这篇文章主要介绍了WPF中隧道路由和冒泡路由事件的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。  WPF中使用路由事件升级了传统应用开发中的事件,在WPF中使用路由
2023-06-14

nodejs开发——express路由与中间件

路由 通常HTTP URL的格式是这样的: http://host[:port][path] http表示协议。 host表示主机。 port为端口,可选字段,不提供时默认为80。 path指定请求资源的URI(Uniform Resour
2022-06-04

IGRP路由协议的原理分析

  在计算机网络中,路由协议的选择至关重要,它直接影响到一个网络的性能,而路由协议的选择又相当复杂。今天我们来介绍一些关于其中一个协议IGRP的相关内容,希望大家能从文中能够得到帮助,也希望本文能够让大家了解更多关于这个协议的一些知识。  IGRP(Interior Gateway Routing Protocol,内
IGRP路由协议的原理分析
2024-04-18

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录