django项目中新增app的2种实现方法


Posted in Python onApril 01, 2020

1.在pycharm的工具栏找到 Tools,点击之后会有“Run manage.py task”选项,点击它之后,在pycharm下面会出现一个输入界面,在里面输入

“startapp appName(你的App名称)”

回车之后就可以在工程下面看到你新建的App了。

2.直接在Pycharm的命令行,直接输入

python manage.py startapp appName(You are appName)

就OK!

创建完成以后,还需要对其进行注册。找到跟django项目同名的包下面的settings.py文件中的INSTALLED_APPS,然后把要添加的app添加到最后一行,后面加上逗号,至此,我们的app就创建完成了。

注意:两种方法成功的前提是项目中没有报错。

补充知识:如何在django下建立多个app

django是MTV模式,即template(页面展现),modle(数据库表对象),view(业务逻辑处理),在开发中发现,随着项目功能的增多,把所有的功能模块放在一个app肯定不切实际,也不符合网站开发的原则。下图是我在做的一个数据可视化分析平台,项目名:integrated_display 两个app:分别是 contentms 和 display,建立app的命名很简单,Python

manage.py startapp appname即可,这里重点说明的是,针对不同的app在同一个项目下,

1:对应静态资源(html,css,js)的访问如何区分开来,

2:不同app的url如何书写

django项目中新增app的2种实现方法

解决第一个问题:

如下图所示,展现是contentms 下面的文件,一般新建app,直接在app里面,新建templates和static文件夹,然后将对应的文件放入到里面就行,但是当项目中建立多个app,解决同名冲突,需要在templates下再创建一个文件夹,这样就解决假设有两个app中都有main.html页面,到底跳转到哪个页面的问题,在views.py文件页面跳转 render中在html前加上外面的文件夹的名称,这里是cms,

如:return render(request,'cms/program.html',{'authority':authority,}),

同样在静态文件里面也新建cms文件夹,静态文件内容放入到cms里面,访问静态文件形式

如:<link href="{% static 'cms/css/sweetalert.css'%}" rel="external nofollow" rel="stylesheet"/>,

这样问题1就解决了

django项目中新增app的2种实现方法

问题2:

项目的url.py文件内容

urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^cms/', include('contentms.urls', namespace="cms")),
  url(r'^display/', include('display.urls', namespace="display")),
]

app contentms的url.py文件内容

urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^$', views.login, name='login'),

]

app display的url.py文件内容:

urlpatterns = [
 url(r'^admin/', admin.site.urls),
 # url(r'^$', views.platform, name='platform'),
 url(r'^$', views.login, name='login'),
 url(r'^channel/$',views.channel,name='channel'),
 url(r'^program/$',views.program,name='program'),

]

其他按照正常的操作即可,这样即可实现一个项目中建立多个app

以上这篇django项目中新增app的2种实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中的reduce内建函数使用方法指南
Aug 31 Python
Python批量创建迅雷任务及创建多个文件
Feb 13 Python
Python使用redis pool的一种单例实现方式
Apr 16 Python
python实现电脑自动关机
Jun 20 Python
使用Python制作自动推送微信消息提醒的备忘录功能
Sep 06 Python
pygame游戏之旅 python和pygame安装教程
Nov 20 Python
对pycharm 修改程序运行所需内存详解
Dec 03 Python
Python/Django后端使用PIL Image生成头像缩略图
Apr 30 Python
如何利用Anaconda配置简单的Python环境
Jun 24 Python
python+opencv实现车牌定位功能(实例代码)
Dec 24 Python
Python脚本去除文件的只读性操作
Mar 05 Python
python怎么调用自己的函数
Jul 01 Python
Django Admin设置应用程序及模型顺序方法详解
Apr 01 #Python
django API 中接口的互相调用实例
Apr 01 #Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
Apr 01 #Python
Python greenlet和gevent使用代码示例解析
Apr 01 #Python
Django-rest-framework中过滤器的定制实例
Apr 01 #Python
Python如何操作office实现自动化及win32com.client的运用
Apr 01 #Python
Django之choices选项和富文本编辑器的使用详解
Apr 01 #Python
You might like
解析php开发中的中文编码问题
2013/08/08 PHP
php中的抽象方法和抽象类
2017/02/14 PHP
PHP获取当前日期及本周一是几月几号的方法
2017/03/28 PHP
Laravel框架中Blade模板的用法示例
2017/08/30 PHP
js prototype 格式化数字 By shawl.qiu
2007/04/02 Javascript
js的逻辑运算符 ||
2010/05/31 Javascript
javascript 文本框水印/占位符(watermark/placeholder)实现方法
2012/01/15 Javascript
JS 各种网页尺寸判断实例方法
2013/04/18 Javascript
随窗体滑动的小插件sticky源码
2013/06/21 Javascript
JavaScript判断表单中多选框checkbox选中个数的方法
2015/08/17 Javascript
jquery常用的12个小功能
2016/07/22 Javascript
AngularJs bootstrap搭载前台框架——基础页面
2016/09/01 Javascript
NodeJS遍历文件生产文件列表功能示例
2017/01/22 NodeJs
详解vue跨组件通信的几种方法
2017/06/15 Javascript
vue实现评论列表功能
2019/10/25 Javascript
JavaScript canvas基于数组生成柱状图代码实例
2020/03/06 Javascript
js+canvas实现纸牌游戏
2020/03/16 Javascript
低版本中Python除法运算小技巧
2015/04/05 Python
python实现的希尔排序算法实例
2015/07/01 Python
详解python的几种标准输出重定向方式
2016/08/15 Python
用Eclipse写python程序
2018/02/10 Python
Python切片操作实例分析
2018/03/16 Python
python中for循环输出列表索引与对应的值方法
2018/11/07 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
英国在线泳装店:Simply Swim
2019/05/05 全球购物
List、Map、Set三个接口,存取元素时,各有什么特点?
2015/09/27 面试题
小学生暑假感言
2014/02/06 职场文书
合作意向书
2014/07/30 职场文书
关于青春的演讲稿500字
2014/08/22 职场文书
医药销售自我评价200字
2014/09/11 职场文书
个人自荐书怎么写
2015/03/26 职场文书
困难补助申请报告
2015/05/19 职场文书
三八节祝酒词
2015/08/11 职场文书
《秋天的雨》教学反思
2016/02/19 职场文书
导游词之河姆渡遗址博物馆
2019/10/10 职场文书
详解Java实践之适配器模式
2021/06/18 Java/Android