Статический файл не работает: не найдено: / {static 'logo.png'} - PullRequest
1 голос
/ 04 июля 2019

В моем приложении Django я создал навигационную панель. Я хочу наложить небольшое изображение PNG в левом верхнем углу.

Итак, я использовал статический файл.

В моей папке mysite я создал папку с именем static_files. В эту папку я добавил свое изображение в формате png с именем logo.png

Я изменил свой settings.py из mysite следующим образом:

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'mysite/static_files/')
]

STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'

Мой base.html содержит:

    {% load staticfiles %}

<nav class="navbar navbar-light bg-light">
  <a href="">
  <img src="{static 'logo.png'}" alt="" class="d-inline-block alight-top"/>
  </a>
  <a class="" href="fdklsmflds">Login</a>
  <a class="" href="fdklsmflds">Sign up</a>
</nav>

Наконец-то я бегу python3.6 manage.py collectstatic

НО Я ПОЛУЧИЛ ОШИБКУ:

[04/Jul/2019 18:13:53] "GET / HTTP/1.1" 200 1379
Not Found: /{static 'logo.png'}
[04/Jul/2019 18:13:54] "GET /%7Bstatic%20'logo.png'%7D HTTP/1.1" 404 2139

Ответы [ 2 ]

2 голосов
/ 04 июля 2019

Вы забыли символы %, указывающие, что шаблонизатор Djangos должен заменить эту часть на правильное содержимое.

Измените эту часть

<img src="{static 'logo.png'}" ...

на

<img src="{% static 'logo.png' %}" ...
1 голос
/ 04 июля 2019

Вам нужно использовать это

<img src="{% static 'logo.png' %}" alt="" class="d-inline-block alight-top"/>

Подробнее нажмите здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...