django有哪些文件(2023年最新解答)

导读:今天首席CTO笔记来给各位分享关于django有哪些文件的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

Django笔记2:django目录文件说明

记:2021.07.20 21:38

命名规范:

PEP8,借鉴、但不要影响阅读体验==功能完成为主,后期优化

前后端分离

敏感数据脱敏

注: 1. Django起步思维导图,引用《跟老齐学python:Django实战》

Django中app文件夹中的文件都是干什么用的

C:\Users\用户名\AppData里面一般有三个文件夹,分别是Local,LocalLow,Roaming,简单地来说,都是用来存放软件的配置文件和临时文件的,里面有很多以软件名称或软件公司命名的文件夹,理论上都可以删除。例如,如果安装了PhotoshopCS5,在AppData搜索Adobe,将搜到的文件和文件夹全部删除,然后启动Photoshop,已删除的文件又会重新生成,但体积变小。删除文件的时候千万要小心,因为AppData同时存放了用户帐户的配置文件。随着系统使用时间的增加和安装软件的增多,AppData占用的空间会越来越大。有一个非常简单的方法可以安全删除AppData整个文件夹,就是删除帐户!更换用户帐户有一个好处是可以“重置”系统,减少垃圾文件,但也会带来不少麻烦,系统好像回到了新安装的状态,某些软件需要重新激活,极个别软件需要重新安装。附:其中三个文件夹的作用,里面的文件可以随心所欲地删除。C:\Users\用户名\AppData\Local\Temp里面是临时文件。C:\Users\用户名\AppData\Local\Microsoft\Windows\TemporaryInternetFiles里面是IE缓存文件(默认是隐藏的)。C:\Users\用户名\AppData\Local\Microsoft\Windows\History里面是浏览器历史记录(默认是隐藏的)。

django有哪些文件(2023年最新解答)  第1张

「Django框架」-拆分配置文件settings

使用 Django 命令生成一个项目的基本结构时,配置信息默认保存在和项目目录同名的目录下的 settings.py 文件里, 在实际的开发中,对于一个项目而言,这样往往是不合适的,需要将 settings 配置文件拆分为几个文件, 线上和线下都会使用的文件放置到 base.py 文件里,线上的放置在 product.py 文件里,开发测试的文件放置在 develop.py 文件里。这样功能划分就明确了,方便我们线上线下的调试。

1)在项目同名目录下,创建一个 settings 的包(目录下含 __init__.py 的文件夹)。

2)在 settings 的包中分别新建3个文件:公共基础 base.py (用于配置 Django 默认生成配置文件), develop.py (用于开发环境)、 product.py (用于生产环境)。

3)将原来的 settings.py 的内容复制到 base.py 文件中。

4)确认目录OK后,我们需要修改 base.py 中的时区和语言配置:

如果有类似公共部分需要修改的,则在 base.py 中修改即可,例如注册子应用之类的,在此就不一一举例。。

5)之后,对于线上线下不同部分,我们只要导入 base.py 模块,再针对不同部分进行修改即可,例如线上线下对接不同的测试数据库,我们则可以修改数据库连接:

6)修改 manage.py 文件, Django 使用自带服务启动时需要知道 settings 文件的路径。

7)到上生产的时候,使用 asgi.py ( Django3.x 中)或 wsgi.py ( Django2.x 以下版本),则可以更改生产配置文件的路径:

以上又有个问题,如果线上线下环境切换,又要改动代码, 我们可以通过设置系统环境变量来动态获取,避免修改代码:

这样通过读取系统环境变量中的 LIPIN_PROFILE 来控制 Django 加载不同的 settings 文件。

这样可以将原来的 settings.py 文件删掉!!

但是这样就会有个问题,你会发现之前好好的网页我们访问不了了,模板找不到!

这是因为之前的配置文件中,路径问题,因为我们原来的配置文件是在同名目录下,而我们现在将配置文件拆分为一个新的包,所以还要上一级目录才是我们需要的:

Django 静态文件与动态文件

编辑 settings:

MEDIA_ROOT 和 MEDIA_URL 代表的是用户上传后的文件保存的地方。可以理解为存放可变文件的文件夹。

这两个参数有什么用处呢?

在 Django 的 FileField 和 ImageField 这样的 Model 类中,有 upload_to 参数可选。当 upload_to 设置相关的地址后,如例子:

文件上传后将自动保存到: os.path.join(MEDIA_ROOT, upload_to) ,在本例中就是: /static/uploads/test_pictures

而 MEDIA_URL ,则代表用户可以通过怎样的 URL 来访问这些上传后的文件资源。

在本例子中,本机地址是: , MEDIA_URL 设置为 /static/uploads/

那么通过: 文件名 就可以访问相关的上传图片或者其他文件。

STATIC_ROOT 和 STATIC_URL 则是网站中,用于网站放置的静态图片、CSS、JS 等文件的保存地址。可以理解为,保存网站运行中不会再变文件的文件夹(即不会删除或者新增)

STATIC_URL ,同 MEDIA_URL 类似;设置 STATIC_URL 为 "/static/" 时候,通过: 文件名 就可以访问相关的静态文件了。

STATIC_ROOT 是一个比较特殊的文件夹。这是 Django 的开发模式和部署模式区别最大的地方。

通常我们在开发模式下,可以在我们所在的 project 下建立相应的 app, 然后每个 app 下都建立相应的 static 文件夹。在开发模式下(Debug=True),Django 将为我们自动查找这些静态文件(每个app)并在网页上显示出来。然而,在部署模式下,Django 认为这些工作交由 web 服务器来运行会更有效率。

因此,在部署时,我们需要运行一下 :

这个命令将会把每个 app 里的 static 目录下的文件 copy 到 STATIC_ROOT 这个文件夹下。

如果在部署模式下,即: (Debug=False) 访问相关网页,如: 文件名 ,将不会访问 Django下各个 App 中的 static 文件夹,而是 STATIC_ROOT 中所指定的文件夹。

为了在部署模式下正确使用,我们还需要在 urls.py 中添加以下:

这相当于告诉 Django 碰到一个 "static" 开头的链接时,该如何处理。

了解完以上之后,我们让图片在前端显示出来。

编写一个 show 视图函数,来传递动态图片:

然后编写 show.html :

结语:以上就是首席CTO笔记为大家整理的关于django有哪些文件的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的互联网后端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23 13:08
下一篇 2023-09-23 13:08

相关推荐

发表回复

登录后才能评论