iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >diango路由分发
  • 145
分享到

diango路由分发

路由diango 2023-01-30 22:01:13 145人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

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

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


--结束END--

本文标题: diango路由分发

本文链接: https://www.lsjlt.com/news/179140.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • diango路由分发
    1个Django 项目里面有多个APP目录大家共有一个 url容易造成混淆,于是路由分发让每个APP的拥有了自己单独的url例如:将blog应用的url分离出来1、进入mysite目录,修改urls.py文件from django...
    99+
    2023-01-30
    路由 diango
  • Django多app路由分发(纯后端)
    目录1、环境搭建2、生成django项目3、创建app4、在每个app下创建templates文件夹,用于创建html页面5、每个app创建urls.py用于构建每个app的分路由6...
    99+
    2024-04-02
  • H3C之路由重分布
     路由重分布     描述:路由器1使用ripng协议 、路由器2使用OSPF协议、路由器3在两个路由器之间,是实现两个路由器之间网络的互联,需要在路由器3上注入两个协议        OSPF import-route rip     ...
    99+
    2023-01-31
    路由 H3C
  • java开发RocketMQ之NameServer路由管理源码分析
    目录1.前言2.路由元信息3.路由注册3.1Broker路由注册3.2NameServer处理路由注册3.3路由删除3.3.1Broker异常关闭3.3.2Broker正常关闭3.4...
    99+
    2024-04-02
  • Vue3中路由和路由配置方式的示例分析
    这篇文章给大家分享的是有关Vue3中路由和路由配置方式的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。路由的基本配置安装插件npm install vue-router@next&nb...
    99+
    2023-06-22
  • vue动态路由配置及路由传参的示例分析
    这篇文章主要介绍了vue动态路由配置及路由传参的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。动态路由:  当我们很多个页面或者组件...
    99+
    2024-04-02
  • 使用koa-router路由参数和前端路由的案例分析
    这篇文章将为大家详细讲解有关使用koa-router路由参数和前端路由的案例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。koa-router 定制路由时支持通过冒号...
    99+
    2024-04-02
  • Angular中路由的示例分析
    这篇文章将为大家详细讲解有关Angular中路由的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1. 摘要简单来说地址栏中,不同的地址(URL)对应不同的页面,这...
    99+
    2024-04-02
  • nginx路由配置怎么转发
    在nginx中配置路由转发可以使用`location`指令来实现。下面是一个示例配置:```server {listen 80;se...
    99+
    2023-09-14
    nginx
  • WPF中隧道路由和冒泡路由事件的示例分析
    这篇文章主要介绍了WPF中隧道路由和冒泡路由事件的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。  WPF中使用路由事件升级了传统应用开发中的事件,在WPF中使用路由...
    99+
    2023-06-14
  • vue-router路由的示例分析
    这篇文章将为大家详细讲解有关vue-router路由的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。官方文档:旧版:https://github.com/vuej...
    99+
    2024-04-02
  • 详解Angular路由之子路由
    目录一、子路由语法二、实例1、新建2个组件修改其内容2、修改路由配置3、修改product.component.ts的模版一、子路由语法 二、实例 在商品详情页面,除了显示商品id...
    99+
    2024-04-02
  • 分析Angular路由守卫Route Guards
    这篇文章主要介绍“分析Angular路由守卫Route Guards”,在日常操作中,相信很多人在分析Angular路由守卫Route Guards问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方...
    99+
    2024-04-02
  • 分析Vue-Router路由与配置
    这篇文章主要介绍“分析Vue-Router路由与配置”,在日常操作中,相信很多人在分析Vue-Router路由与配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”分析Vue-...
    99+
    2024-04-02
  • vue-router命名路由和编程式路由传参的示例分析
    这篇文章主要介绍vue-router命名路由和编程式路由传参的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!有时候,通过一个名称来标识一个路由显得更方便一些,特别是在链接一个...
    99+
    2024-04-02
  • Think PHP路由修改技巧分享
    Think PHP是一款高效、灵活的PHP开发框架,其路由系统可以帮助开发者更好地管理网站的URL访问。本文将分享一些Think PHP路由修改的技巧,希望能帮助到大家。 1. 路由规...
    99+
    2024-04-02
  • 如何分析Vue router路由守卫
    本篇文章给大家分享的是有关如何分析Vue router路由守卫,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、全局前置beforeEach当 Local Stora...
    99+
    2023-06-22
  • Node.js 路由
    Node.js 路由我们要为路由提供请求的URL和其他需要的GET及POST参数,随后路由需要根据这些数据来执行相应的代码。因此,我们需要查看HTTP请求,从中提取出请求的URL以及GET/POST参数。这一功能应当属于路由还是服务器(甚至...
    99+
    2023-06-03
  • thinkphp8路由
    thinkphp8已出来有好一段时间了。这些天闲来无事,研究了下tp8的路由。默认情况下,tp8的路由是在route\app.php的文件里。但在实际工作中,我们并不会这样子去写路由。因为这样不好管理...
    99+
    2023-10-01
    android
  • Angular中Route路由的示例分析
    这篇文章主要介绍Angular中Route路由的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Angular 路由(Route)我们可以将路由器理解成控制整个应用状态的视图对象, 每个应用都有一个路由器; 路...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作