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分割TXT文件成4K的TXT文件
May 23 Python
Python中编写ORM框架的入门指引
Apr 29 Python
Python简单实现自动删除目录下空文件夹的方法
Aug 29 Python
Python+Django搭建自己的blog网站
Mar 13 Python
Python图像滤波处理操作示例【基于ImageFilter类】
Jan 03 Python
用python一行代码得到数组中某个元素的个数方法
Jan 28 Python
Python Django切换MySQL数据库实例详解
Jul 16 Python
Python坐标线性插值应用实现
Nov 13 Python
django项目中新增app的2种实现方法
Apr 01 Python
python dict如何定义
Sep 02 Python
Python3 多线程(连接池)操作MySQL插入数据
Jun 09 Python
用Python编写简单的gRPC服务的详细过程
Jul 04 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
PHP 中的批处理的实现
2007/06/14 PHP
一些常用的php简单命令代码集锦
2007/09/24 PHP
用PHP的超级变量$_GET获取HTML表单(Form) 数据
2011/05/07 PHP
解析Linux下Varnish缓存的配置优化
2013/06/20 PHP
php旋转图片90度的方法
2013/11/07 PHP
php中rename函数用法分析
2014/11/15 PHP
PHP中浮点数计算比较及取整不准确的解决方法
2015/01/09 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
2016/10/18 PHP
JavaScript与函数式编程解释
2007/04/27 Javascript
asp.net HttpHandler实现图片防盗链
2009/11/09 Javascript
JavaScript 常见对象类创建代码与优缺点分析
2009/12/07 Javascript
最常用的12种设计模式小结
2011/08/09 Javascript
JavaScript indexOf方法入门实例(计算指定字符在字符串中首次出现的位置)
2014/10/17 Javascript
详解JavaScript的while循环的使用
2015/06/03 Javascript
jquery插件unobtrusive实现片段式加载
2015/06/15 Javascript
knockoutjs动态加载外部的file作为component中的template数据源的实现方法
2016/09/01 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
jQuery实现html table行Tr的复制、删除、计算功能
2017/07/10 jQuery
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
2018/11/28 Javascript
微信小程序出现wx.getLocation再次授权问题的解决方法分析
2019/01/16 Javascript
在Node.js中将SVG图像转换为PNG,JPEG,TIFF,WEBP和HEIF格式的方法
2019/08/22 Javascript
小程序如何写动态标签的实现方法
2020/02/05 Javascript
python和pyqt实现360的CLable控件
2014/02/21 Python
Python入门必须知道的11个知识点
2018/03/21 Python
python3.8与pyinstaller冲突问题的快速解决方法
2020/01/16 Python
Python3 selenium 实现QQ群接龙自动化功能
2020/04/17 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
美国伊甸园兄弟种子公司:Eden Brothers
2018/07/01 全球购物
将"引用"作为函数返回值类型的格式、好处和需要遵守的规则
2016/02/09 面试题
个人实用简单的自我评价
2013/10/19 职场文书
生产班组长岗位职责
2014/01/05 职场文书
银行领导证婚词
2014/01/11 职场文书
应届毕业生如何写求职信
2014/02/16 职场文书
经典爱情感言
2015/08/03 职场文书
2016年村干部公开承诺书(公开承诺事项)
2016/03/25 职场文书
字典算法实现及操作 --python(实用)
2021/03/31 Python