我刚在Digital Ocean上设置了一台新服务器。将Django更新为1.11,上传了我的项目,运行collectstatic
并且我确保我的设置与我拥有的另一个项目相匹配(现场直播并且100%工作)。但是,我的静态文件没有正确收集到我的静态文件夹(我已经设置好了),我上传的任何媒体都不会显示,而且管理员仍然拥有所有设计,之后我将其更新为1.11 ...任何想法?设置代码如下..
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.sites',
'django.contrib.flatpages',
'listings',
'stats',
'users',
'allauth',
'allauth.account',
'allauth.socialaccount',
)
...
STATIC_ROOT = os.path.join(BASE_DIR,'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
'/static/',
]
#MEDIA
MEDIA_ROOT = '/home/django/django_project/media/'
MEDIA_URL = '/media/'
此处还有我的文件结构图:注意管理员没有收集静态
答案 0 :(得分:1)
尝试将代码更改为:
STATIC_URL = '/static/'
STATIC_DIR = os.path.join(BASE_DIR,'static')
STATICFILES_DIRS = [STATIC_DIR,]
我认为STATIC_ROOT
应该是部署目录中的静态目录,例如/var/www/mysite/static
。
如果这不起作用,请在问题中添加collectstatic
命令返回(在shell上)。
答案 1 :(得分:0)
你所做的是STATIC和STATIC_ROOT同一个目录。为STATIC创建一个名为static_store的新文件夹,为STATIC_ROOT创建一个static_cdn.Hope它运行良好!