У меня есть часть моего приложения, которая позволяет использовать собственный логотип.
Состояние объекта по умолчанию (и вид объекта) не является настраиваемым логотипом, но если он существует, замените заголовок настраиваемым логотипом navbar.
Логотип - это стандартная модель ImageField для co (mpany).:
models.py:
class Co(models.Model):
logo = models.ImageField(blank=True)
шаблон:
{% if co.logo %}
{% block navbar %}
{% include 'templates/navbar_logo.html' %}
{% endblock %}
{% endif %}
Я также пробовал это с {% if co.logo == None %}
, {% if not ... %}
, {% if co.logo.url %}
ипопытка смоделировать логику с помощью co.logo|default_if_none:""
, но в случаях, когда логотип не установлен, представление выдает:
ValueError at /co/foo
The 'logo' attribute has no file associated with it.
для ... пусто также неработа
{% for co.logo.url in co %}
...
{% empty %}
...
{% endfor %}
в оболочке django:
(с логотипом)
c.logo >> <ImageFieldFile: logo.png>
c.logo.url >> '/media/logo.png'
(без логотипа)
b.logo >> <ImageFieldFile: None>
есть встроенныйв фильтре тегов шаблонов django, который позволит этому условию пройти True, только если в поле загружено изображение?в противном случае не загружать блок навигации?спасибо