python写一个路径选择app_django下创建多个app并设置urls方法

1、创建第二个app

假设我们项目P下面已经有了一个默认的app,名字是app1。现在我想创建第二个app,名字时app2。

进入pychram下的Terminal中,运行命令:

python manage.py startapp app2

此外,我在每个app下都建立一个urls.py,方便区分。

右击app名,点击“new”,选择“Python File”,命名为urls,确定。

2、设置url.py

(1)设置P\urls.py

引入app2下的urls,然后添加引导路径。具体代码如下:

from app2 import urls as app2_urls

urlpatterns = [

path('app2/',include(app2_urls)), # 将所有以app2开头的urls,都交给app2(app名)下的urls.py处理

]

(2)设置app2\urls.py

from django.urls import path

from app2 import views

urlpatterns = [

path('index/', views.index),

]

3、编写app2下的views.py

from django.shortcuts import render,HttpResponse

# Create your views here.

# 绑定博客

def index(request):

return HttpResponse(111)

4、html页面如何调用url

一般在href或者src中调用一般这样写:

href="/app2/index/" rel="external nofollow"

这样就OK了。

内容扩展:

Django项目下创建多个app

基于Django2.0版本建立的项目。

之前在项目下建立app都是单个的,最近由于需求,需要在单个项目下建立多个app,最简单的方法就是将所有的app都放在与manage.py文件同级的目录下,但是这样的方式会显得项目目录下的文件夹臃肿,对于强迫症的而言简直是一种折磨。

所以我采取了将多个app放在同一个文件夹内的方式来解决这种问题。

myDjango

├───.idea

│ └───inspectionProfiles

├───Apps

│ ├───app01

│ │ ├───migrations

│ │ │ └───__pycache__

│ │ └───__pycache__

│ └───app02

│ ├───migrations

│ │ └───__pycache__

│ └───__pycache__

├───myDjango

│ └───__pycache__

└───templates

├───app01

└───app02

myDjango是项目名称,将创建的app放在了Apps文件夹内。这样做使整个项目的看起来干净很多。对于template也采取了类似的做法,将不同应用的template放在不同的目录下,为了使url尽量看起来舒服一点,在每个应用中添加了一个urls.py文件,为了在项目的urls.py文件中引用。

放置好之后在myDjango目录下的setting.py文件进行设置,添加一句

sys.path.insert(0, os.path.join(BASE_DIR, 'Apps'))

做好之后,还需要在myDjango目录下的urls.py文件添加对应的path

from django.contrib import admin

from django.urls import path, include

urlpatterns = [

path('admin/', admin.site.urls),

path('app02/', include("Apps.app02.urls")),

path('app01', include("Apps.app01.urls")),

]

到这里基本上就可以在一个项目中设置多个app了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551911.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html h1 字母,html----h1-6标签

web安全之sql注入的防御自动把引号转义 1.防御sql注入的基本原则 任何时候不应该改变用户的输入 比如用户输入单引号,那输出也要是单引号. 几种基本的防 ...Java中的装箱拆箱一) 装箱与拆箱 Java中有概念是一切皆对象,因为所有的类都默认继…

hid编程 qt_hidapi-0.7.0 OS Develop 操作系统开发 240万源代码下载- www.pudn.com

文件名称: hidapi-0.7.0下载 收藏√ [5 4 3 2 1 ]开发工具: Visual C文件大小: 1593 KB上传时间: 2015-07-01下载次数: 0提 供 者: 王成龙详细说明:hidapi-0.7.0源码包,VC编译后生成hidapi.dll,可在其他C编程工具中使用(比如界面功能强…

java类初始化顺序_Java 类的初始化顺序

静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义,每一次创建对象时执行执行顺序优先级:静态块,main(),构造块,构造方法1. 构造函数public HelloWorld(){ }关于构造函数&am…

推箱子android课程设计,推箱子游戏课程设计精选.doc

推箱子游戏课程设计精选目 录Ⅰ 摘要Ⅱ 前言Ⅲ 功能描述Ⅳ 配置要求Ⅴ 总体设计一、功能模块设计二、数据结构设计三、函数功能描述四、代码实现Ⅵ 参考文献Ⅰ 摘 要推箱子游戏是一款很有趣味的游戏,其开发过程有一定的技巧和方法,其中涉及到软中断、二维…

docker 获取宿主机ip_Docker基础修炼6——网络初探及单机容器间通信

如果觉得文章有帮助,欢迎点击头像关注我获取更多原创文章,同时也欢迎转发。同时也可以在我的历史文章中找到Linux操作系统相关的服务器运维管理入门系列文章,欢迎交流。前文演示docker容器内部数据共享与持久化,本文继续讨论docke…

奔图m6202nw清零方法_极低成本给奔图M6202NW硒鼓加墨粉(PD-213 加粉)

极低成本给奔图M6202NW硒鼓加墨粉(PD-213 加粉)2020-05-07 20:53:2532点赞135收藏82评论追加修改(2020-05-12 21:14:24):跟大家道个歉,最后关于“芯片不用更换”的说法我说错了,芯片是需要更换的,我发帖子的时候由于打印数量还没到(具体多少我…

android resume 流程,android,_应如何模拟才能测试activity的onPause-onResume流程?,android - phpStudy...

应如何模拟才能测试activity的onPause->onResume流程?发现原来启动了DisplayMessageActivity以后,实际上activity_main的onStop()已经被调用了。所以实际流程是 Pause->Stop->Start->Resume,不存在 Pause->Start->Resume的…

如何使用python多线程_Python3如何使用多线程升程序运行速度

优化前后新老代码如下: from git_tools.git_tool import get_collect_projects, QQNews_Git from threading import Thread, Lock import datetime base_url "http://git.xx.com" project_members_commits_lang_info {} lock Lock() threads []Author…

上下定高 中间自适应_上下固定中间自适应布局

1. 使用绝对定位对这三栏都实现绝对定位,其中中间绝对定位的位置是上下两栏的高度,内容超出则中间部分出现流动条;代码实现:绝对定位实现html,body,div{padding:0;margin:0;}.header{position:absolute;top:0; /*头部绝对定位位置…

html设计动画小黄人,CSS3实现可爱的小黄人动画

每次看到CSS3动画就心痒痒想试一下,记得一个多月前看了白树哥哥的一篇博客,突然开窍,于是拿他提供的demo试了一下,感觉很棒!下图为demo提供的动画帧设计稿。自己也想说搞一个DIY的动画出来,可是&#xff0c…

collectors 求和_Collectors扩展接口 实现BigDecimal的相加

Collectors扩展接口 实现BigDecimal的相加第一步创建 ToBigDecimalFunction接口import java.math.BigDecimal;FunctionalInterfacepublic interface ToBigDecimalFunction {BigDecimal applyAsBigDecimal(T value);}第二步 创建工具类 实现接口import java.math.BigDecimal;imp…

python函数进阶小结_python之函数进阶

1. 今日内容 1.1 函数的参数 *的魔性用法 函数形参最终顺序 1.2名称空间 全局名称空间,局部名称空间,内置名称空间 取值顺序与加载顺序 作用域 内置函数:globals() locals() 1.3 高阶函数(函数的嵌套) 1.4关键字&#…

鸿蒙空间是什么星辰变,飞升之后做什么《星辰变》神魔妖界收伏奇珍异兽

十年经典,再续流星!由阅文白金作者“我吃西红柿”同名小说改编《星辰变》手游正在火热预约中,现在前往游戏官网即可预约游戏获得专属福利。作为一款由修真小说改编的手游作品,《星辰变》手游拥有着超千万字的游戏剧本,并且依照小说…

python 读取csv文件转成字符串_从CSV读取到 dataframe pandas python时dict对象转换为字符串...

您可以使用literal_eval转换应为字典(或其他类型)的字符串: from ast import literal_eval def try_literal_eval(s): try: return literal_eval(s) except ValueError: return s 现在,您可以将其应用于您的DataFrame: In [11]: df pd.DataFrame({A: [&…

html前端页面的基本骨架是,web前端入门到实战:css实现的骨架屏方案

web前端入门到实战:css实现的骨架屏方案发布时间:2020-08-04 01:32:03来源:51CTO阅读:152作者:前端向南优点简单,不需要工程,不用puppeteer生成骨架dom,也不需要二次开发维护定制程度…

大数据数据收集数据困难_大数据就是好数据吗?研究人员在处理大数据集时遭遇的 5 大挑战...

大数据给每个科研领域的研究方式带来了前所未有的变化。每个领域中,研究人员可使用的工具皆有显著性,大数据现在逐渐成为横跨各学科领域的共同工具。大数据集的可取得性以及可存储并共享大量的数据的能力为研究人员打开了科学探索的几条途径。数据是研究…

docker privileged作用_docker总结

docker基本命令是一个开源的应用容器引擎;是一个轻量级容器技术;docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);docker客户端(Client):连接docker主机进行操作&#…

edge播放视频HTML5黑屏,edge不能播放网页视频怎么办-修复edge浏览器播放视频黑屏的方法 - 河东软件园...

Microsoft Edge是微软在更新win10系统的同时发布的一款新浏览器,它基于IE浏览器设计,是新一代的微软指定浏览器!这款浏览器从上市到现在一直都是备受争议的软件,有的用户喜欢使用IE,也有用户喜欢Edge。在使用新版本的e…

c语言乘法口诀表的流程图_例18:C语言编程实现九九乘法表

例18&#xff1a;C语言编程实现九九乘法表&#xff0c;样式要求长方形、右三角形、左三角形。解题思路&#xff1a;这个问题的算法很简单&#xff0c;就是两个for循环的嵌套&#xff0c;三角形的样式就是多了一些空格。长方形源代码演示&#xff1a;#include<stdio.h>//头…

python包和目录有什么不同_python模块和包的区别

在计算机程序的开发过程中&#xff0c;随着程序代码越写越多&#xff0c;在一个文件里代码就会越来越长&#xff0c;越来越不容易维护。为了编写可维护的代码&#xff0c;我们把很多函数分组&#xff0c;分别放到不同的文件里&#xff0c;这样&#xff0c;每个文件包含的代码就…