gpt4 book ai didi

Django 1.4(MEDIA_ROOT,STATIC_ROOT,TEMPLATE_DIRS)

转载 作者:行者123 更新时间:2023-12-04 02:04:31 25 4
gpt4 key购买 nike

我在 settings.py中有一个 Django 1.3 项目,此选项。

SITE_ROOT = os.path.dirname(os.path.realpath(__file__))

STATIC_ROOT = os.path.join(SITE_ROOT, 'static')

MEDIA_ROOT = os.path.join(SITE_ROOT, 'media')

TEMPLATE_DIRS = ( os.path.join(SITE_ROOT, 'templates'), )



但是在中,默认情况下是Django 1.4 settings.py 被移动到名称与项目名称相同的子目录中。由于存在静态,因此媒体模板目录现在必须移到同一子目录中了吗?

这是我要做的,还是只更改STATIC_ROOT,MEDIA_ROOT和TEMPLATE_DIRS选项?

我知道这两种变体都可以,但是在Django 1.4中最好的做法是什么?

我也知道每个应用程序都可以拥有自己的模板和静态目录。

并且将所有其他应用程序目录放在同一子目录中会更好吗?这不是默认情况下使用manage.py startapp发生的情况

最佳答案

好的,我遵循的方案是这样的:
myproject/requirements.txt-pip可安装软件包
myproject/deployment-部署内容,例如服务器配置文件,固定装置(虚拟数据)等。
myproject/docs-项目的文档
myproject/tests-项目的测试
myproject/myproject-项目的操作代码(和settings.py,urls.py)

扩展myproject/myproject文件夹:
myproject/myproject/app1-常规应用(包含其特定的模板/静态文件)
myproject/myproject/app2-另一个常规应用(与上面相同)
myproject/myproject/website-按约定的半特殊应用程序。

这个website应用程序基本上包含4件事:

1)一个空的models.py(以便django会将其视为有效的应用)

2)带有入口点views.py View 的index。也许某些其他 View 不适用于任何其他特定应用程序。

3)带有自定义django commandsmanagement目录,该目录适用于整个项目。

4)具有404.html和505.html的templates目录。此外,它还有一个名为website的子目录,其中包含每个其他应用程序extends加上的通用/基本html模板index.html

5)static目录,其后的子目录分别为全局静态文件cssjsmedia

我猜没有异国情调。我认为大多数人都遵循类似的模式,但是我想对此进行任何低效率的操作,如果有的话。

编辑:
关于我使用的生产VS开发的设置
流行的settings_local模式,您可以阅读here并最终将
引导您here,它描述了一个更好的模式。

关于Django 1.4(MEDIA_ROOT,STATIC_ROOT,TEMPLATE_DIRS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10799106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com