如何在heroku上为django设置collectfast? 这假设我已经成功设置了从Amazon S3托管和服务的静态文件。
答案 0 :(得分:2)
1)要禁用heroku的自动collectstatic,请运行:
heroku config:set DISABLE_COLLECTSTATIC=1
2)将以下内容添加到settings.py,以使用数据库中的表格进行collectfast
缓存。提交并推送更改为heroku。
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
},
'collectfast': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'collectfast_cache',
'TIMEOUT': 60,
'OPTIONS': {
'MAX_ENTRIES': 10000
},
},
}
COLLECTFAST_CACHE = 'collectfast'
4)要在数据库中创建所需的缓存表,请运行:
heroku run createcachetable
5)要恢复heroku的自动收集,请运行:
heroku config:unset DISABLE_COLLECTSTATIC
现在,每个部署都会正确使用collectfast将已修改的静态文件收集到s3。