【发布时间】:2015-11-12 14:57:48
【问题描述】:
如何在 heroku 上为 django 设置 collectfast? 这是假设我已经成功设置了从 Amazon S3 托管和服务的静态文件。
【问题讨论】:
标签: django heroku amazon-s3 collectstatic
如何在 heroku 上为 django 设置 collectfast? 这是假设我已经成功设置了从 Amazon S3 托管和服务的静态文件。
【问题讨论】:
标签: django heroku amazon-s3 collectstatic
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 的自动 collectstatic,运行:
heroku config:unset DISABLE_COLLECTSTATIC
现在每个部署都将正确使用 collectfast 将修改后的静态文件收集到 s3。
【讨论】: