Django可以收集静态覆盖旧文件吗?

时间:2016-09-21 14:51:28

标签: python css django debian deb

在我的deb postinst文件中:

PYTHON=/usr/bin/python
PYTHON_VERSION=`$PYTHON -c 'import sys; print sys.version[:3]'`
SITE_PACKAGES=/opt/pkgs/mypackage/lib/python$PYTHON_VERSION/site-packages
export PYTHONPATH=$SITE_PACKAGES
echo "collect static files"
$PYTHON manage.py collectstatic --noinput 
  

当我运行' dpkg -i mypackage.deb'安装包,没问题。

     

当我运行' dpkg -i mypackage.deb'要重新安装包,旧的   css文件不变

     

当我改变了$ PYTHON manage.py collectstatic   --noinput' to' $ PYTHON manage.py collectstatic --noinput -c'并运行' dpkg -i mypackage.deb'要重新安装软件包,错误是   以下:OSError:[Errno 2]没有这样的文件或目录:   ' /选择/ PKGS / myporject /静态'

有什么想法吗?

Django collectstatic可以覆盖旧文件吗?

1 个答案:

答案 0 :(得分:0)

(在这里添加,也许有人会遇到同样的问题。) 是。

/opt/pkgs/mypropject/lib/python2.7/site-packages/mypropject-py2.7.egg/myapp/static/css(目录A)中的css文件的时间戳是包构建完成的时间,而不是安装css文件的时间。

但是/ opt / pkgs / myporject / static(目录B)中的css文件的时间戳是安装时间。

这就是为什么collectstatic有时不能覆盖我的旧css文件(无法将一些css文件从目录A复制到目录B)。