Django 1.9 推动我们的代码今天上线但有静态目录问题
Django 1.9 pushing our code to go live today but have static directory issue
我们正在推动我们的代码在今天上线,在此之前,我需要弄清楚将我的静态文件放在哪里。我在项目目录中有一个名为 static 的文件夹。在里面我有一个管理员和一个图像文件夹。在查看文档时,看起来这些不应该放在实际项目中。但应该在项目之外。这些是 运行 代码 python manage.py collectstatic
时 django 附带的文件。但是对于我在网站本身上使用过的 css,看起来我应该有另一个名为 static 的文件夹,以便将其全部放入。所以我的问题是:我的项目目录中是否应该有一个名为 static 的文件夹,其中我收藏了我的 css,我是否也应该拥有 collectstatic
文件夹,但放在别处?
我还被告知将我的 css 放在媒体目录中。这听起来不正确,我在 django 文档中找不到任何关于静态文件的内容。
基本上你要做的就是告诉 django STATICFILES_DIR 设置你所有静态文件夹所在的位置
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'mycssfolder'),
os.path.join(BASE_DIR, 'otherstaticfolder')
]
所以当你 运行 djangoadmin collecstatic 命令时,它会在所有这些文件夹中查找静态文件。
您可以将静态文件存储在多个文件夹中,这些文件夹可以位于任何地方
它在设置中看起来像这样
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
#You can have multiple directories here
)
在设置中这样设置STATIC_ROOT
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
当你运行$ python manage.py collectstatic
这会将静态文件夹中的所有文件复制到 STATIC_ROOT 目录中。
这样做的目的是将所有静态文件收集到一个目录中,以便您可以轻松地提供它们。
**注
在设置中设置基本目录
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
我们正在推动我们的代码在今天上线,在此之前,我需要弄清楚将我的静态文件放在哪里。我在项目目录中有一个名为 static 的文件夹。在里面我有一个管理员和一个图像文件夹。在查看文档时,看起来这些不应该放在实际项目中。但应该在项目之外。这些是 运行 代码 python manage.py collectstatic
时 django 附带的文件。但是对于我在网站本身上使用过的 css,看起来我应该有另一个名为 static 的文件夹,以便将其全部放入。所以我的问题是:我的项目目录中是否应该有一个名为 static 的文件夹,其中我收藏了我的 css,我是否也应该拥有 collectstatic
文件夹,但放在别处?
我还被告知将我的 css 放在媒体目录中。这听起来不正确,我在 django 文档中找不到任何关于静态文件的内容。
基本上你要做的就是告诉 django STATICFILES_DIR 设置你所有静态文件夹所在的位置
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'mycssfolder'),
os.path.join(BASE_DIR, 'otherstaticfolder')
]
所以当你 运行 djangoadmin collecstatic 命令时,它会在所有这些文件夹中查找静态文件。
您可以将静态文件存储在多个文件夹中,这些文件夹可以位于任何地方
它在设置中看起来像这样
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
#You can have multiple directories here
)
在设置中这样设置STATIC_ROOT
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
当你运行$ python manage.py collectstatic
这会将静态文件夹中的所有文件复制到 STATIC_ROOT 目录中。
这样做的目的是将所有静态文件收集到一个目录中,以便您可以轻松地提供它们。
**注
在设置中设置基本目录
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))