Перехват исключений в шаблонах django

Я использую тег шаблона в шаблоне Django (тег - thumbnail ), и он генерирует исключение, которое делает шаблон не работает с ошибкой 500.Я бы хотел, чтобы этого не происходило, так как у меня нет полного контроля над исходными изображениями, которые время от времени вызывают это исключение, и в этих случаях я использую пустое изображение / заполнитель. Это текущий код шаблона:

{% thumbnail video.image_url "50x74" crop="center" as im %}

{% empty %}

{% endthumbnail %}

Это исключение (PIL выдает его):

TemplateSyntaxError at /

Caught IOError while rendering: cannot identify image file

Я искал решения и нашел silent_variable_failure , который является свойством, которое, если оно определено, создает исключение. будь спокоен. Я думаю, это может указывать в правильном направлении, но, насколько я могу судить о любом решении, использующем это, мне пришлось бы изменить сам код тега шаблона, который является внешней библиотекой - я бы предпочел не делать этого,

В идеале я хотел бы заменить третью строку в моем коде чем-то вроде {% empty или exception_raised%} .

Есть ли что-нибудь подобное? Вы знаете какие-нибудь альтернативы?

14
задан Eduardo Ivanec 15 December 2011 в 17:20
поделиться