collectstatic无法收集管理静态文件

时间:2013-01-09 23:21:46

标签: django django-admin django-staticfiles

当我运行collectstatic并且管理页面没有css时,我面临以下错误。

错误:

  

IOError:[Errno 2]没有这样的文件或目录:   的u'的/ usr /本地/ LIB / python2.7 / DIST-包/ django的/了contrib /管理/媒体/ IMG / GIS / move_vertex_off.png

以下是设置。

  

STATIC_ROOT ='/ var / www / mysite / media /'

     

STATIC_URL ='/ static /'

     

ADMIN_MEDIA_PREFIX ='/ static / admin /'

此错误消息是什么意思?该文件确实存在于上述路径中。

3 个答案:

答案 0 :(得分:2)

我认为问题是由于某些安装错误造成的。重新安装django没有帮助。完全重新安装操作系统,因为这对我来说是更快的解决方案,事情进展顺利。但仍然根本原因对我来说仍然是一个谜。

答案 1 :(得分:2)

默认情况下,collectstatic会在STATICFILES_DIRS中定义的所有位置以及INSTALLED_APPS设置指定的应用的“静态”目录中查看(请参阅:https://docs.djangoproject.com/en/dev/howto/static-files/https://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/)。

因此,如果您将管理员添加到INSTALLED_APPS中,这应该没问题。

当前版本的Django中不再使用ADMIN_MEDIA_PREFIX。

答案 2 :(得分:0)

我通过运行public static function getCampaignID($list_id) { $campaigns = json_encode(self::$mc_api->get("/campaigns"), true); $campaignIds = []; foreach ($campaigns as $campaign) { //if the list_id matches the current campaign recipients['list_id'] add to the array if ($campaign['recipients']['list_id'] === $list_id) { $campaignIds[] = $campaign['id']; } } //return an array with campaignIds return $campaignIds; } 然后将以下内容添加到我的Apache配置中解决了这个问题:

python manage.py collectstatic