django分发路由

路由分发(include)

让Django项目的每个app都单独拥有自己的 urls,减少混淆,容易维护。

1、在每个 app 目录里都创建一个 urls.py 文件,记录该应用的路由信息。

2、在项目的 urls.py 文件里,统一将路径分发给各个 app 目录。

过程

1、创建app2应用,在app2文件夹下创建"urls.py"文件,在"urls.py"文件中增加路由信息

python 复制代码
django-admin startapp app2
python 复制代码
from django.contrib import admin
from django.urls import path,include

from app2 import views

urlpatterns = [
    path('app2/index',views.index_1),
]

在原本的app1下面也可以类似加入

python 复制代码
from django.contrib import admin
from django.urls import path,include

from app1 import views

urlpatterns = [
    path('app1/index',views.index),
    path('app1/index2',views.index2),
]

2、在app2 、app1的"views.py"文件中添加视图函数

python 复制代码
from django.contrib import admin
from django.urls import path,include

from app2 import views

urlpatterns = [
    path('app2/index',views.index_1),
]
python 复制代码
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.

def index(request):
    return render(request,"1/index.html")

def index2(request):
    return HttpResponse("app1中的index2方法")

3、在myshop项目的"urls.py"文件中添加路由分发信息

4、运行查看结果

相关推荐
luckys.one几秒前
第9篇:Freqtrade量化交易之config.json 基础入门与初始化
javascript·数据库·python·mysql·算法·json·区块链
言之。2 小时前
Django中的软删除
数据库·django·sqlite
阿里嘎多哈基米3 小时前
SQL 层面行转列
数据库·sql·状态模式·mapper·行转列
抠脚学代码3 小时前
Ubuntu Qt x64平台搭建 arm64 编译套件
数据库·qt·ubuntu
jakeswang3 小时前
全解MySQL之死锁问题分析、事务隔离与锁机制的底层原理剖析
数据库·mysql
Heliotrope_Sun4 小时前
Redis
数据库·redis·缓存
一成码农4 小时前
MySQL问题7
数据库·mysql
吃饭最爱4 小时前
JUnit技术的核心和用法
数据库·oracle·sqlserver
专注API从业者4 小时前
Python/Java 代码示例:手把手教程调用 1688 API 获取商品详情实时数据
java·linux·数据库·python
java1234_小锋4 小时前
[免费]基于Python的协同过滤电影推荐系统(Django+Vue+sqlite+爬虫)【论文+源码+SQL脚本】
python·django·电影推荐系统·协同过滤