diff --git a/wagtail/wagtailimages/templates/wagtailimages/images/edit.html b/wagtail/wagtailimages/templates/wagtailimages/images/edit.html index dd31a1ba54..20c22988f5 100644 --- a/wagtail/wagtailimages/templates/wagtailimages/images/edit.html +++ b/wagtail/wagtailimages/templates/wagtailimages/images/edit.html @@ -78,7 +78,7 @@
{% trans "Max dimensions" %}
{{ original_image.width }}x{{ original_image.height }}
{% trans "Filesize" %}
-
{{ image.file.size|filesizeformat }}
+
{% if filesize %}{{ filesize|filesizeformat }}{% else %}{% trans "File not found" %}{% endif %}
diff --git a/wagtail/wagtailimages/tests/test_admin_views.py b/wagtail/wagtailimages/tests/test_admin_views.py index 4a677fbf22..8e28418bbe 100644 --- a/wagtail/wagtailimages/tests/test_admin_views.py +++ b/wagtail/wagtailimages/tests/test_admin_views.py @@ -1,5 +1,4 @@ import json -import unittest from django.test import TestCase from django.utils.http import urlquote @@ -122,7 +121,6 @@ class TestImageEditView(TestCase, WagtailTestUtils): image = Image.objects.get(id=self.image.id) self.assertEqual(image.title, "Edited") - @unittest.expectedFailure def test_with_missing_image_file(self): self.image.file.delete(False) diff --git a/wagtail/wagtailimages/views/images.py b/wagtail/wagtailimages/views/images.py index 91d84745a6..9fee030326 100644 --- a/wagtail/wagtailimages/views/images.py +++ b/wagtail/wagtailimages/views/images.py @@ -119,10 +119,18 @@ def edit(request, image_id): except NoReverseMatch: url_generator_enabled = False + # Get file size + try: + filesize = image.file.size + except OSError: + # File doesn't exist + filesize = None + return render(request, "wagtailimages/images/edit.html", { 'image': image, 'form': form, 'url_generator_enabled': url_generator_enabled, + 'filesize': filesize, })