django下创建多个app并设置urls方法


Posted in Python onAugust 02, 2020

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了。

Python 相关文章推荐
Python全局变量操作详解
Apr 14 Python
Python中查看文件名和文件路径
Mar 31 Python
一个基于flask的web应用诞生 用户注册功能开发(5)
Apr 11 Python
使用Pyinstaller的最新踩坑实战记录
Nov 08 Python
Python实现的多线程同步与互斥锁功能示例
Nov 30 Python
python切片及sys.argv[]用法详解
May 25 Python
Django跨域请求问题的解决方法示例
Jun 16 Python
python reverse反转部分数组的实例
Dec 13 Python
python+opencv实现摄像头调用的方法
Jun 22 Python
Python新手如何进行闭包时绑定变量操作
May 29 Python
django模型类中,null=True,blank=True用法说明
Jul 09 Python
python 提高开发效率的5个小技巧
Oct 19 Python
Django如何在不停机的情况下创建索引
Aug 02 #Python
如何用Anaconda搭建虚拟环境并创建Django项目
Aug 02 #Python
如何解决flask修改静态资源后缓存文件不能及时更改问题
Aug 02 #Python
Flask缓存静态文件的具体方法
Aug 02 #Python
Flask中sqlalchemy模块的实例用法
Aug 02 #Python
python线程里哪种模块比较适合
Aug 02 #Python
python缩进长度是否统一
Aug 02 #Python
You might like
解决ajax+php中文乱码的方法详解
2013/06/09 PHP
PHP 过滤页面中的BOM(实现代码)
2013/06/29 PHP
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
2014/06/05 PHP
PHP反射原理与用法深入分析
2019/09/28 PHP
Html5的placeholder属性(IE兼容)实现代码
2014/08/30 Javascript
node.js中的fs.close方法使用说明
2014/12/17 Javascript
Angularjs结合Bootstrap制作的一个TODO List
2016/08/18 Javascript
jQuery实现Table表格隔行变色及高亮显示当前选择行效果示例
2017/02/14 Javascript
浅谈vue的props,data,computed变化对组件更新的影响
2018/01/16 Javascript
使用Vue写一个datepicker的示例
2018/01/27 Javascript
傻瓜式解读koa中间件处理模块koa-compose的使用
2018/10/30 Javascript
javascript中的闭包概念与用法实践分析
2019/07/26 Javascript
快速解决layui弹窗按enter键不停弹窗的问题
2019/09/18 Javascript
基于javascript实现碰撞检测
2020/03/12 Javascript
python实现2014火车票查询代码分享
2014/01/10 Python
Python高级应用实例对比:高效计算大文件中的最长行的长度
2014/06/08 Python
Python2.x版本中cmp()方法的使用教程
2015/05/14 Python
快速实现基于Python的微信聊天机器人示例代码
2017/03/03 Python
Python进程间通信之共享内存详解
2017/10/30 Python
python 字符串和整数的转换方法
2018/06/25 Python
解决python3 urllib 链接中有中文的问题
2018/07/16 Python
Python 调用 zabbix api的方法示例
2019/01/06 Python
Python中单线程、多线程和多进程的效率对比实验实例
2019/05/14 Python
Python利用matplotlib做图中图及次坐标轴的实例
2019/07/08 Python
Python closure闭包解释及其注意点详解
2019/08/28 Python
python 实现全球IP归属地查询工具
2020/12/18 Python
全网最全python库selenium自动化使用详细教程
2021/01/12 Python
澳大利亚办公室装修:JasonL Office Furniture
2019/06/25 全球购物
最新大学生自我评价
2013/09/24 职场文书
乡镇四风对照检查材料
2014/08/31 职场文书
尊老爱幼演讲稿
2014/09/04 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
新手入门Jvm-- JVM对象创建与内存分配机制
2021/06/18 Java/Android
SQL实现LeetCode(178.分数排行)
2021/08/04 MySQL
HTML5+CSS+JavaScript实现捉虫小游戏设计和实现
2021/10/16 HTML / CSS
Python加密与解密模块hashlib与hmac
2022/06/05 Python