Automatic generates images with the right dimensions whenit's missing from the local media storage based on a commondatabase or remote MEDIA_URL.
pip install django-images-placeholder==0.0.3
Automatic generates images with the right dimensions when it's missing from the local media storage using metadata of a common database to generate a image or fetching from an alternative MEDIA_URL.
Install the package with:
pip install django-images-placeholder
Uninstall the package with:
pip uninstall django-images-placeholder
Add "django_images_placeholder" to your INSTALLED_APPS setting like this::
INSTALLED_APPS = [
...
'django_images_placeholder',
]
...
# This is NOT meant to be used in production environment.
if settings.DEBUG:
from django_images_placeholder.views import serve_image_placeholder
urlpatterns = [
url(r'^media/', serve_image_placeholder, name='images_placeholder'),
] + urlpatterns
settings.py
, set MEDIA_URL
to point to it ...
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(DATA_DIR, 'media')
STATIC_ROOT = os.path.join(DATA_DIR, 'static')
DEFAULT_FILE_STORAGE = 'django_images_placeholder.custom_storage.OverwritingStorage'
STATICFILES_LOCATION = STATIC_URL
MEDIAFILES_LOCATION = MEDIA_URL
Optionally, set ALTERNATIVE_MEDIA_URL
to point to a production MEDIA_URL,
so with the view fail to provide an image by openning it locally or trying
to generating it by original image reference' metadata, it you ultimatelly
try to fetch ALTERNATIVE_MEDIA_URL
and cache it:
ALTERNATIVE_MEDIA_URL = 'https://mybucket.s3.amazonaws.com/media/'